Глава 2.4 Типы данных
Тип - это любой встроенный тип данных, такой как byte, short, int, long,
float, double, char, boolean или имя класса.
Итак, вкратце рассмотрим эти типы.
- byte. Первые четыре из представленных выше типов представляют собой
числовые целые типы. Тип byte может иметь самый маленький диапазон из них
(от -128 до 127) и используется обычно в специальных битовых операторах
или файловых и сетевых потоках (подробней об этом я напишу в следующем проекте на этом сайте).
В простых вычислениях использовать этот тип нецелесообразно из-за
возможного переполнения и потери данных в переменных этого типа.
- short. Он может содержать числа по модулю не превышающие 32000.
Используется очень редко, так как стандартным типом является все-таки int.
Типы byte и short при вычислениях всегда автоматически переводятся в тип int.
- int. Самый распространенный целочисленный тип. Имеет достаточную
вместимость. Большинство типов с меньшей вместительностью при вычислениях
приводятся к int.
- long. Имеет огромный диапазон значений. Если значения переменной
превышают несколько миллиардов, есть смысл использовать не int, а long.
Если вычисления проводятся хотя бы с одним числом типа long, то и тип
результирующего выражения также будет long.
- Два следующих типа предназначены для переменных с дробными числами
(или как их еще называют с плавающей точкой). float не является основным
типом для дробей, поэтому если вы хотите использовать именно этот тип, то
кроме его указания нужно прибавить в конце числа букву f или F:
float mathsqrt = 2.25f ;
- double. Для значений вещественных чисел с двойной точностью. Многие из
математических функций класса Math, такие как sin, cos возвращают результат
именно такого типа. При вычислениях, если хотя бы один из операндов имеет
тип double, то и результат будет иметь тип double, вне зависимости от того,
какой тип имел второй операнд - целочисленный или float.
- char. Для хранения одного символа клавиатуры и служит тип char.
Любая буква латинского алфавита или кириллицы, число или пробел может
содержаться в переменной этого типа. Для представления символов, которые не
могут быть восприняты непосредственно, существуют несколько специальных
последовательностей. Наиболее часто используемые следующие:
Таблица 1. Некоторые специальные последовательности символов клавиатуры.
Кавычки " | \"
|
Апостроф ' | \'
|
Обратный слеш \ | \\
|
Enter /Return | \n
|
Символы помещаются в пару апострофов (' '). Хотя тип char не является
числовым, с них можно выполнять все арифметические операции: сложения,
вычитания и так далее.
- Логический тип boolean. Может принимать только два значения: true/false,
которые не могут быть переведены в числовое представление и используются в
логических операторах только в переменных типа boolean.
- Типы, не перечисленные выше, не являются простыми и могут быть только
экземплярами встроенных классов Java. Более подробно классы мы будем
рассматривать позднее (глава 3), сейчас же хотелось
бы сказать только о двух классах Java, чьи экземпляры являются очень
распространенными в Java-программах.
- String. В Java нет встроенного типа для описания одной строки
произвольного текста. Для этого служит класс String. Этот класс содержит
много удобных методов для работы со строками, в том числе перевода отдельных
символов в тип char. Текст при этом заключается в кавычки (" ").
В примере класса HelloWorld использование формальной переменной args типа
String означало, что интерпретатор готов был принять вместе с вызовом
программы входные параметры и обработать их, воспринимая как строку текста.
Это удобно, например, для задания и проверки паролей или задания управляющих
воздействий.
- Object. Класс Object стоит на вершине классовой иерархии Java. Это
значит, что он инкапсулирует все свойства, которыми может обладать типичный
класс Java. Все классы, непосредственно или через свои родительские классы,
наследуют эти свойства от Object. В качестве переменной класс Object может
требоваться некоторым методам и классам для списка формальных переменных или
в ряде других случаев.