Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
java.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
57 Кб
Скачать
☆

Java - Типы данных

Прежде всего следует сказать, что Java - это строго типизированный язык. Во многом - благодаря этому появляется возможность лучше контролировать процесс выполнения программы - возрастает уровень безопасности. Отсутствуют средства автоматического (неявного) приведения типов. Компилятор проверяет все выражения и параметры на соответствие типов.

Элементарные типы

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

  1. byte (8 бит - [-127, +128]) - наименьший по размеру целочисленный тип, полезен для работы с данными поступающими из сети или файла. Данный тип также хорош для манипуляции необработанными двоичными данными, которые не совместимы напрямую с другими типами данных.

  2. short (16 бит \\ -32768 до +32767)

  3. int (32 бита) - используется наиболее часто. В выражениях типы short и byte "повышаются" до int после чего происходят вычисления - так что иногда лучше сразу использовать int - чтобы избежать затрат на подобное неявное преобразование.

  4. long (64 бит) - целочисленный тип, который используют тогда, когда диапазона int недостаточно

  5. char (16 бит \\ от 0 до 65536) - "целочисленный" тип и используется для хранения символов в 2 байта каждый (Unicode - десятки символов разных азбук и цифр) - отрицательных значений данного типа не определено. Приведём небольшой примерчик - дабы показать как данные интерпретируются например в потоке стандартного вывода:

?

1

2

3

4

5

char mysymb = 88;

System.out.println(mysymb ); // выведет букву "X"

// Также можно инкрементировать переменные данного типа:

mysymb++; // увеличиваем значение на единицу

System.out.println(mysymb); // выведет букву "Y"

  1. float (32 бита) - числа с десятичной частью - в ряде процессов обрабатываются быстрее, чем числа с повышенной точною - но этой самой точности как раз таки иногда не хватает

  2. double (64 бита) - числа с десятичной частью (повышенная - "двойная" точность) - например sin, cos и sqrt возвращают именно значения этого типа.

  3. boolean - "логический" тип данных. Присваиваются значения типа true или false - то есть всего два возможных

Элементарные типы также называются простыми. Все простые типы можно разделить на 4-ре группы:

  1. Целые числа: byte, short, int, long - представляют собой числа со знаком.

  2. Числа с плавающей точкой - эта группа включает себе float и double - эти типы хранят числа с точностью до определённого знака после запятой

  3. Символы - в эту группу входит типа char

  4. Булевы значения -boolean - хранит значения типа "истина/ложь"

Элементарные типы представляют собой одиночные значения и объектами не являются - это важно для производительности. Их диапазон значений явно задан и они имеют математически строгое поведение.

Диапазоны простых типов в java не зависят от платформы - что тоже, в каком-то смысле, удобно.

Целочисленные литералы

Вообще, "литерал" (буква) - то есть некоторый символ - служит для обозначения в программе разных объектов - в том числе с помощью символов или их комбинаций обозначаются целые числа:

?

1

int x = 10;

"10" - в данном случае будет являться целочисленным литералом, который обозначает число "десять".

Рассмотрим подробнее - какие возможности есть для указания целочисленных литералов в коде программы на Java:

  1. Для того чтобы указать восьмеричную систему литерал начинают с нуля:

?

1

int x = 07;  //число 7 в восьмеричной системе )

кстати, вот такая вот запись вызовет ошибку:

?

1

2

// так нельзя т.к. 9 не исполь. в 8-мирич. системе.

int x = 09;

  1. Шестнадцатеричные данные записывают начиная с обязательной последовательности "0x" , например:

?

1

long x = 0xFF234AF5345FF;

  1. В JDK7 появилась возможность в явном виде вводить двоичные данные ,начиная со спец. комбинации "0b":

?

1

int x = 0b1000; // =8 в десятичной =))

  1. Также в JDK 7 уже можно делать числа большие числа визуально более понятными, для коллег-программистов, которые будут работать с вашим, кодом - для чего разрешено использовать нижнее подчеркивание:

?

1

int x = 345_567_765;

или даже двойные подчёркивания:

?

1

int x = 500__000__001;

также подчёркивания полезны когда мы вводим числа в двоичной форме - ведь там легко сбиться в разрядах:

?

1

int x =  0b1000_1100_1010;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]