Типы данных языка Java
Java - это язык со строгой типизацией. Это означает, что типы данных должны быть определены уже на этапе компиляции.
Все типы данных в Java можно подразделить на две группы:
- простые типы;
- ссылочные типы.
Язык Java позволяет использовать следующие простые типы:
- числовые типы
целые типы:
- byte (8-битовое значение) диапазон значений от -128 до 127
- short (16-битовое значение) диапазон значений от -32768 до 32767.
- int (32-битовое значение) диапазон значений от -2147483648 до 2147483647
- long (64-битовое значение) диапазон значений от -9223372036854775808 до 9223372036854775807
типы значений с плавающей точкой:
- float (32-битовое значение)
- double (64- битовое значение)
-
символьный тип
- char (16-битовое значение Unicode)
-
логический тип
- boolean (значение true или false)
Например:
// Объявление переменных boolean b1=true; float fN1=74.3F; float fN2=(float)(fN1+2); double dN1=14573.74; double dN2= 81.2E-2;
Значение одного целого типа может быть приведено к значению другого целого типа.
Приведение целых типов к логическому и обратно выполнять нельзя.
Язык Java предусматривает для целочисленных значений следующие операторы:
- операторы сравнения
- = равно
- != не равно
- операторы отношения
- < меньше
- <= меньше или равно
- > больше
- >= больше или равно
- унарные операторы
- + положительное значение
- - отрицательное значение
- бинарные операторы
- + и += сложение (x=x+y эквивалентно записи x+=y)
- - и -= вычитание (x=x-y эквивалентно записи x-=y)
- * и *= умножение (x=x*y эквивалентно записи x*=y)
- / и /= деление (x=x/y эквивалентно записи x/=y)
- % и %= остаток от деления
- префиксный и постфиксный оператор приращения и декремента
- ++ приращение (увеличение значения на 1 до вычисления выражения (++x) или после (x++))
- -- декремент
- операторы сдвига
- << сдвиг влево
- >> сдвиг вправо с распространением знака
- >>> сдвиг вправо без учета знака (слева происходит заполнение нулями)
- унарный логический оператор
- ~ отрицание (побитовое дополнение)
- бинарные логические операторы
- & логическое И (AND)
- | логическое ИЛИ (OR)
- ^ логическое исключающее ИЛИ (XOR)
Если оба операнда имеют целочисленный тип, то операция рассматривается как целочисленная. Если один из операндов имеет тип long, то операция выполняется с использованием 64-битового представления: при этом любой другой операнд будет расширен до типа long и результат будет также иметь тип long. В противном случае операции выполняются, используя 32-битовое представление (любой операнд, не являющийся int, первоначально расширяется до типа int) и результат будет иметь тип int.
Логические значения представляются одним битом и обозначаются константами true и false
В языке Java нельзя прямо выполнить приведение типа int к типу boolean, но можно конвертировать значение int, используя следующий синтаксис языка: int x != 0, где любое не нулевое значение x даст в результате true, а нулевое значение даст false. Для преобразования значения типа boolean в целое следует выполнить условный оператор: bool x ? 1:0.
Для логических значений в языке Java предусмотрены следующие операторы:
- == и !=
- !, &, |, и ^
- && и ||.