Руководство по Java Core. Типы данных.

Переменные – это зарезервированное место в памяти для зранения значения. Другими словами, когда мы объявляем переменную, мы резервируем место в памяти.

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

В языке Java все типы данных делятся на две большие группы:

  • Примитивные типы данных
  • Ссылочное типы данных (Объекты)

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

В Java есть 8 примитивных типов данных:

byte

  • 8-битное целое цисло
  • Максимальное значение: -128 (-2 ^ 7)
  • Минимальное значение: 127 (2 ^ 7 -1)
  • Значение по умлочанию: 0
  • Используется для экономии места в больших массивах. Чаще всего вместо int.
  • Пример: byte c = 65

short

  • 16-битное целое цисло
  • Максимальное значение: -32,768 (-2 ^ 15)
  • Минимальное значение: 32,767 (2 ^ 15 – 1)
  • Значение по умлочанию: 0
  • Используется для экономии места вместо int.
  • Пример: short a = 20000, short b = -10000

int

  • 32-битное целое цисло
  • Максимальное значение: -2,147,483,648 (-2 ^ 31)
  • Минимальное значение: 2,147,483,647 (-2 ^ 31 – 1)
  • Значение по умлочанию: 0
  • Используется для целых значений в случае, если нет дефицита памяти.
  • Пример: int i = 2000000000, int h = -1500000000

long

  • 64-битное целое цисло
  • Максимальное значение: -9,223,372,036,854,775,808 (-2 ^ 63)
  • Минимальное значение: 9,223,372,036,854,775,807 (-2 ^ 63 – 1)
  • Значение по умлочанию: 0L
  • Используется для хранения больших целичисленных значений.
  • Пример: long l = 5000000000L, long k = -4000000000L

float

  • 32-битное число с плавающей точкой IEEE 754
  • Значение по умлочанию: 0.0f
  • Используется для экономии памяти в больших массивах чисел с плавающей точкой.
    Никогда не используется для хранения точных значений (например, денег).
  • Пример: float f = 112.3f

double

  • 64-битное число двойной точности с плавающей точкой IEEE 754
  • Значение по умлочанию: 0.0d
  • Используется для хранения чисел с плавающей точкой (в большинстве случаев).
  • Никогда не используется для хранения точных значений (например, денег).
  • Пример: double d = 121.5

boolean

  • В спецификации размер не указан. Зависит от типа JVM.
  • Возможные занчения: true/false
  • Значение по умлочанию: false
  • Используется для опрделения того, является ли условие истинным.
  • Пример: boolean flag = true

char

  • Символ кодировки Unicode 16-bit
  • Максимальное значение: ‘\u0000’ (или 0)
  • Минимальное значение: ‘uffff’ (или 65б535)
  • Используется для хранения любого символа
  • Пример: char c = ‘C’

Ссылочные типы данных

 

  • К ссылочным типам данных относятся все типы данных, которые создаются с помощью конструкторов. К ним также относятся все классы, создаваемые разработчиками, например, Developer, Car, Person и т.д.
  • Массивы являются ссылочными типами данных.
  • Ссылочная переменная может использоваться в качестве ссылки на любой объект опредёленного типа данных.
  • Все ссылочные типы имеют значение по умолчанию: null.
  • Пример:
    Developer developer = new Developer(“Java Developer”);

Литералы

Литералы – это представление фиксированных значений в виде кода. Они не требуют каких-либо вычислений. Например:


char c = 'C'

Значения int, long, short, byte могут быть выражены с помощью  десятичной, шестнадцатиричной и восьмиричной систем.

Пример:


int decimal = 500;

int octal = 0168;

int hexa = 0x32;

Для строк в языке Java используется класс String. String модет содержать как простые символы, так и символы Unicode:


char c = '\uffff';

String str = "\uffff";

В языке Java также существует ряд управялющих последовательностей для отображения некоторых символов:

\n Новая строка (0x0a)
\r Возврат каретки (0x0d)
\f Прогон страницы (0x0c)
\b Возврат на символ назад (0x08)
\s Проблем (0x20)
\t Табуляция
\” Двойная кавычка
\’ Одинарная кавычка
\\ Обратный слэш
\xxx Восьмиричный символ (xxx)
\uxxxx Шестнадцатиричный символ UNICODE (xxxx)

В этом уроке мы изучили основные типы данных в языке Java и литералы.

В следующем уроке мы рассмотрим различные типы переменных и примеры их использования.