Найти тему
Даниил Лаер

Курс по Java-разработке бесплатно(2 урок)

Оглавление

Коротко о системах счисления

Подробно о системах счисления вам рассказали/расскажут на уроках информатики. Но прикреплю вам ссылку на ЯКласс.

Нас больше интересуют 3 позиционные системы счисления: двоичная, восьмеричная и шестнадцатеричная. Давайте быстренько вспомним их и обсудим их значимость в ИКТ:

Системы счисления

-2

Единицы измерения информации.

Бит - это наименьшая единица информации. это количество информации, необходимое для однозначного определения одного из двух равновероятных событий (Да/Нет). В информатике принято рассматривать последовательности длиной 8 бит. Такая последовательность называется байтом. С помощью одного байта можно записать двоичные коды 256 (28) чисел от 0 до 255. Мы с вами привыкли к большим объёмам. Ниже приведена таблица, которая показывает их соотношение.

Единицы информации

-3

Основные типы данных

Для компьютера очень важно понимать, с каким типом данных мы работаем. Например, "6" он может воспринимать как целое число, действительное число или как строку. И в зависимости от того, как компьютер воспринимает "6", он будет работать с ней по-разному. В любом языке программирование есть понятие примитивных типов данных. В Java их всего 8:

Примитивные типы данных в Java

-4

Помимо примитивных типов данных, существуют так называемые ссылочные типы. Их гораздо больше, и мы поговорим о них позже. Однако один из них настолько популярен, что понадобится нам уже сейчас. Это тип данных String. Он предназначен для хранения строк. В отличии от примитивных, тяжело сказать, сколько места будет занимать этот тип,  так как он является более сложным и состоит из примитивных.

Переменные

Начнём с понятия. Переменная - именованная область памяти компьютера. когда вы её создаёте, компьютер выделяет память для хранения какого-либо значения, и позволяет обращаться к ней по имени, чтобы вам не пришлось запоминать и каждый раз писать этот самый адрес в памяти. Это похоже на коробочку, в которой может что-то лежать.

Для создания переменной мы сначала указываем тип, а потом имя переменной. По сути имя может быть любым, но есть ряд правил для наименования. Оно:

  • не должно начинаться с цифры;
  • не должно содержать специальных символов, пробелов и кириллицы;
  • должно начинаться с маленькой буквы;
  • должно отражать суть того, что в ней хранится;
  • если название состоит из нескольких слов, то используют "верблюжий регистр" (например currentDateTime);
  • не пишите транслитом, лучше использовать переводчик

Вот пример создания переменных. Обратите внимание,  что переменная a только создаётся, но не инициализируется (ей не задаётся значение).

class Test_variable{
public static void main(String[] args){
int a;
int b = 5;
float c = 21.6f;
String name = "Владислав";
double myVariable = 0.58386;
boolean is_end_of_lesson = false;
System.out.println(b); //да он умеет и значения переменных выводить System.out.println("a"); //а тут просто строка, не путайте }
}

Основные операции над типами данных
Большая часть операций, которые мы рассмотрим, очевидна, но есть и не самые обычные действия:"+" - сложение чисел
3 + 4 = 7"-" - вычитание чисел 9 - 5 = 4"*" - умножение чисел 2 * 8 = 16

Вот с делением уже интереснее, так как в любом программировании существует 3 различных деления:просто деление (/)
целочисленное деление (опять /)
остаток от деления (%)
Если тип
int поделить на тип int, то автоматически будет выполняться целочисленное деление:

25/4 = 6

Если же в делении присутствует хоть где-нибудь тип double, то будет выполняться обычное деление:

25.0/4 = 6.25 25/4.0 = 6.25     25.0/4.0 = 6.25

И, как сказано выше, "%" - остаток от деления25%4 = 1Операция "+" умеет не только складывать числа, но и "Склеивать" строки. Этот процесс называется конкатенация

."Hello" + " " + "friend" = "Hello friend"

Scanner


Отлично, теперь давайте научимся вводить данные с клавиатуры. Для этой цели служит специальный сканер. Он умеет считывать данные из разных источников. В том числе и с клавиатуры. Для его создания используется строка:

Scanner sc = new Scanner(System.in);
Можем уже заметить знакомый шаблон создания переменной: сначала указывается тип данных (Scanner), а потом название переменной (sc). В правой части стоит более сложная конструкция. Мы полностью её разберём в начале 2 модуля. А пока обратите своё внимание на
System.in, именно эта строка говорит о том, откуда будут считываться данные - с клавиатуры.Для того, чтобы мы смогли создать нашу переменную типа Scanner надо сначала импортировать этот тип (подключить к нашей программе). Для этого до создания класса пропишем строку:

import java.util.Scanner;
Думаю, что теперь понятно как создать этот сканер, но как с ним работать? Для считывания данных нам достаточно после названия переменной поставить точку, начать вводить
next и выбрать нужную команду. Их много, но мы в основном будем пользоваться следующими:

String s1 = sc.next(); // считает строку до первого пробела String s2 = sc.nextLine(); //считает следующую строку полностью int i = sc.nextInt();
double d = sc.nextDouble();
float f = sc.nextFloat();
boolean b = sc.nextBoolean();
и т.д.
Как вы поняли, каждая из таких команд считывает соответствующий тип данных.Давайте посмотрим, как выглядит программа для считывания двух целых чисел и поиска их суммы:

import java.util.Scanner;

public class Prog {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println(a + b);
}
}
Обратите внимание на самую первую строчку программы. Она нужна для подключения этого самого сканера, так как его нет среди стандартных команд Java. Со временем подобные подключения мы будем встречать гораздо чаще.Ещё немного про вывод
Если в одной строке нужно вывести несколько значений, то пользуйтесь командой  
+.import java.util.Scanner;

class Prog {
public static void main(String[] args) {
int a = 5;
String b = "end";
System.out.println("Это ещё не " + b + ". a=" + a);
System.out.println("a + 4 = " + (a+4)); //используйте скобочки, если значение сначало надо вычислить }
}
Свои вопросы можете задать в телеграмм-канале

https://tlgg.ru/@javaFreeWell

Курс по Java - разработке бесплатно(1 урок)

Курс по Java - разработке бесплатно(3 урок)