Базовые типы
Их в Java 8:
- boolean;
- целочисленные: byte, char, short, int, long;
- вещественные: float, double.
Кроме того, есть ключевое слово void — в java оно типом не является и может использоваться только перед именем функции, указывая, что она ничего не возвращает.
boolean — true/false,
byte — -128..127 (1 байт),
char — 0..65536 (2 байта),
short — -32768..32767 (2 байта).
int — можно запихать числа до 2 с небольшим миллиардов (4 байта),
long — до 9*1018 (8 байт).
float - 4 байта
double - 8 байт
Как вы видите, единственный беззнаковый тип — char. В нём хранятся символы, причём сразу в Unicode.
Все эти типы передаются исключительно по значению
byte x = 100;
byte y = 100;
int i = x + y;
вы получите именно 200, а не что-то ещё — переменные будут автоматически приведены к нужному типу.
Есть несколько способов задавать значение целочисленным переменным, например:
byte a;
a = 1_2; //12, _ не влияет ни на что
a = 07; //восмирично
a = 0x7; //hex
a = 0b1; //двоично
a = 'a'; //по коду символа
double b = 10_1E3; // экспоненциальное представление
Эти типы называются базовыми или примитивными, они не могут быть унаследованы, да и вообще не являются объектами в Java. Никакой информации о сущности такого типа кроме его значения мы получить не можем.
Операции с базовыми типами
Что мы можем с ними делать?
- присваивать значение через =;
- сравнивать через == и != (не-равно).
Для всех кроме boolean (но даже для char):
- инкремент/декремент через ++ / --;
- увеличивать/уменьшать/умножать/делить очевидными способами (деление — /);
- находить остаток от деления через %;
- (кроме float/double) сдвигать используя >> и <<;
- (кроме float/double) применять двоичную логику через &, |, ^ (xor), ~ (не) .
Для boolean — &&, ||, ^, ! (не).
Оригинал: http://habrahabr.ru/post/49582/
Комментариев нет:
Отправить комментарий