Типы данных и переменные
Одной из основных особенностей Java является то, что данный язык является строго
типизированным. А это значит, что каждая переменная представляет определенный тип и данный
тип строго определен.
Итак, рассмотрим систему встроенных базовых типов данных,
которая используется для
создания переменных в Java. А она представлена следующими типами.
boolean: хранит значение true или false
byte: хранит целое число от -128 до 127 и занимает 1 байт
short: хранит целое число от -32768 до 32767 и занимает 2 байта
int: хранит целое число от -2147483648 до 2147483647 и занимает 4 байта
long: хранит целое число от –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 и
занимает 8 байт
float: хранит число с плавающей точкой от -3.4*10
38
до 3.4*10
38
и занимает 4 байта
double: хранит число с плавающей точкой от ±4.9*10
-324
до ±1.8*10
308
и занимает 8 байт
char: хранит одиночный символ в кодировке Unicode и занимает 2 байта, поэтому диапазон
хранимых значений от 0 до 65536
Объявление переменных
Переменные объявляются следующим образом: тип_данных имя_переменной. Например, int
x;. В этом выражении мы объявляем переменную x типа int. То есть x будет хранить не
которое
число не больше 4 байт.
В качестве имени переменной может выступать любое произвольное название, которое
удовлетворяет следующим требованиям:
имя может содержать любые алфавитно-цифровые символы, а также знак подчеркивания,
при этом первый символ в имени не должен быть цифрой
в имени не должно быть знаков пунктуации и пробелов
имя не может быть ключевым словом языка Java
Кроме того, при объявлении и последующем использовании надо учитывать,
что Java -
регистрозависимый язык, поэтому следующие объявления int num; и int NUM; будут
представлять две разных переменных.
Объявив переменную, мы можем тут же присвоить ее значение или инициализировать
ее. Инициализация переменныхпредставляет присвоение переменной начального значения,
например: int x=10;. Если мы не проинициализируем переменную до ее использования, то мы
можем
получить ошибку, например, в следующем случае:
int x;
System.out.println(x);
Некоторые варианты объявления переменных:
boolean active = true;
int x;
int y=10;
byte num = 50;
char c='s';
double d = 1.5;
int a=4;
int z=a+5;
Работа с разными системами счисления целых чисел
Как правило, значения для целочисленных переменных задаются в десятичной системе
счисления, однако мы можем применять и другие системы исчисления. Например:
int num111 = 0x6F; // 16-тиричная система, число 111
int num8 = 010; // 8-ричная система, число 8
int num13 = 0b1101; // 2-ичная система, число 13
Для задания шестнадцатеричного значения после символов 0x указывается число в
шестнадцатеричном формате. Таким же образом восьмеричное значение указывается после
символа 0, а двоичное значение - после символов 0b.
Использование суффиксов
При присвоении переменной типа float значения с плавающей
точкой Java автоматически
рассматривает это значение как объкт типа double. И чтобы указать, что данное значение должно
рассматриваться как float, нам надо использовать суффикс f:
float fl = 30.6f;
double db = 30.6;
И хотя в данном случае обе переменных имеют практически одно значения, но эти значения
будут по-разному рассматриваться и будут занимать разное место в памяти.
Символы и строки
В качестве значения переменная символьного
типа получает одиночный символ,
заключенный в ординарные кавычки: char ch='e';. Кроме того, переменной символьного типа
также можно присвоить целочисленное значение от 0 до 65536. В этом случае переменная опять
же будет хранить символ, а целочисленное значение будет указывать на номер символа в таблице
символов Unicode. Например:
char ch=102; // символ 'f'
System.out.println(ch);
Еще одной формой задания символьных переменных является шестнадцатеричная форма:
переменная получает значение в шестнадцатеричной форме, которое
следует после символов
"\u". Например, char ch='\u0066'; опять же будет хранить символ 'f'.
Символьные переменные не стоит путать со строковыми, 'a' не идентично "a". Строковые
переменные представляют объект String, который в отличие от char или int не является
примитивным типов в Java:
String hello = "Hellow...";
System.out.println(hello);
Константы
Переменные можно объявить один раз в программе и затем несколько раз присваивать им
различные значения:
int num=5;
num= 57 ;
num=89;
Но в
Java также имеются константы. В отличие от переменных константам можно
присвоить значение только один раз. Константа объявляется также, как и переменная, только
вначале идет ключевое слово final:
final int num=5;
num=57; // так мы уже не можем написать, так как num - константа
Константы позволяют
задать такие переменные, которые не должны больше изменяться.
Например, если у нас есть переменная для хранения числа pi, то мы можем объявить ее
константой, так как ее значение постоянно.