Обложка канала

Библиотека Java разработчика

9291 @BookJava

Библиотека Java разработчика. Книги по программированию на Java.

Библиотека Java разработчика

4 года назад
Открыть в
Какие существуют примитивы? В Java имеется 9 возможных типов значения переменной: ссылка на объект или один из восьми примитивных типов: 🔘 byte – знаковое целое число от -2^7 до 2^7-1; 🔘 short – знаковое целое число от -2^15 до 2^15-1; 🔘 int – знаковое целое число от -2^31 до 2^31-1; 🔘 long – знаковое целое число от -2^63 до 2^63-1; 🔘 float – знаковое число с плавающей точкой 32 бита стандарта IEEE 754; 🔘 double – то же, что и float, но 64 бита; 🔘 char – 16-битный символ Unicode, от '\u0000'(0) до '\uffff'(65535); 🔘 booleantrue или false; По умолчанию поля примитивных типов принимают нулевые значения: 0, 0L, '\u0000', false. Про особенности работы, способ хранения и специальные значения чисел с плавающей точкой стоит почитать подробнее. Отдельная интересная тема – boxing/unboxing. Каждый примитивный тип снабжен своей ссылочной версией. Примитивное значение заворачивается и разворачивается из него автоматически при необходимости. Это может приводить к большим затратам на выделение памяти, когда например int индекс цикла используется в качестве значения переменной Object и превращается в Integer без нужды – частая задача на собеседованиях. Еще классы-обертки содержат набор утилитарных методов для их примитивов. Сколько памяти занимает примитив – вопрос с подвохом. Спецификация требует, чтобы размер был достаточным для всех значений. Конкретный размер определяется реализацией JVM, он может быть больше. Например в 64-bit HotSpot переменная boolean занимает не 1 бит, а 8. Для полного погружения рекомендуется подробный официальный туториал по примитивным типам. #Классы