Класс number java
Классы Integer, Character, Boolean
Часто бывает предпочтительней работать с объектами, а не с примитивными типами. Так, например, при использовании коллекций, просто необходимо значения примитивных типов каким-то образом представлять в виде объектов. Для этих целей и предназначены так называемые классы-обертки (wrapper classes). Для каждого примитивного типа Java существует свой класс-обертки. Такой класс является неизменяемым, то есть, для изменения значения необходимо создавать новый объект. К тому же класс-обертка имеет атрибут final и его нельзя наследовать.
Все классы-обертки (кроме Void) реализуют интерфейс java.io.Serializable, поэтому объекты любого класса-обертки (кроме Void) могут быть сериализованы. Это имеет важное значение для «сетевых» пересылок объектов.
Классы-обертки содержат статическое поле TYPE — содержащее объект Class, соответствующий примитивному оборачиваемому типу. Также классы-обертки содержат статические методы для обеспечения удобного манипулирования соответствующими примитивными типами, например, преобразование к строковому виду.
Примитивный тип | Класс-обертка |
---|---|
byte | Byte |
short | Short |
char | Character |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
Wrapper classes числовых типов (Byte, Short, Integer, Long, Float, Double) наследуются от класса Number, который содержит код, общий для всех классов-оберток числовых типов. Все классы-обертки реализуют интерфейс Comparable.
Классы-обертки числовых типов имеют метод equals(Object), сравнивающий примитивные значения объектов. Но с этим надо быть предельно внимательным. Так в результате выполнения следующего кода
мы увидим в консоли следующий текст :
Данный результат связан с тем, что во всех классах-обертках метод equals() сначала производит проверку на совпадение типов (классов), и если нет совпадения, то сразу же возвращает false. В JDK 1.3.1 для класса-обертки Integer метод equals() определен следующим образом :
Класс Number
Абстрактный класс Number является суперклассом для классов Byte, Double, Float, Integer, Long и Short. Наследники Number должны обеспечить методы преобразовывания числовых значений в byte, double, float, int, long и short.
Класс Number имеет один конструктор :
Методы класса Number :
Метод | Описание |
---|---|
byte byteValue() | преобразование значения в тип byte |
abstract double doubleValue() | преобразование значения в тип double |
abstract float floatValue() | преобразование значения в тип float |
abstract int intValue() | преобразование значения в тип int |
abstract long longValue() | преобразование значения в тип long |
short shortValue() | преобразование значения в тип short |
Класс Integer
Конструкторы класса Integer
- Integer(int value) — создание объекта Integer на основе аргумента int
- Integer(String s) — создание объекта Integer на основе строкового аргумента
Поля класса Integer
- static int MAX_VALUE — максимальная величина типа int
- static int MIN_VALUE — минимальная величина типа int
- static >
Метод Описание byte byteValue() преобразование значения в тип byte int compareTo(Integer integer) сравнение двух целых чисел int compareTo(Object o) сравнение значения с другим объектом Integer decode(String nm) перевод строки в Integer double doubleValue() преобразование значения в тип double boolean equals(Object obj) сравнение с другим объектом float floatValue() преобразование значения в тип float int hashCode() получение hashcode для обьекта int intValue() преобразование значения в тип int long longValue() преобразование значения в тип long int parseInt(String s) преобразование текстового значения в тип int int parseInt(String s, int radix) преобразование текстового значения со знаком в системе счисления, определенной во втором аргументе, в тип int short shortValue() преобразование значения в тип short String toBinaryString(int i) преобразование целочисленного значения i в текстовый вид с базой 2 (двоичный) String toHexString(int i) преобразование целочисленного значения i в текстовый вид с базой 16(шестнадцатиричный) String toOctalString(int i) преобразование целочисленного значения i в текстовый вид с базой 8(восьмиричный) String toString() преобразование значения в тип String String toString(int i) преобразование значения i в тип String String toString(int i, int radix) преобразование целочисленного значения i в строку в заданной системе счисления radix Integer valueOf(String s) создание объекта Integer, инициализированного величиной, определенной в строковой переменной s Integer valueOf(String s, int radix) создание объекта Integer, инициализированного величиной, определенной в строковой переменной s, записанной в системе счисления radix
Методы parseInt(), преобразующие текстовое значение в целочисленное, не следует путать с методами valueOf(), возвращающие класс-обертку. Если переданная на вход строка содержит нецифровые символы, то методы возбуждают исключение NumberFormatException.
Дополнительную информацию о классе Integer можно получить на странице Кэширование класса Integer
Класс Byte
Класс Byte является стандартной оболочкой для байтовых величин.
Конструкторы класса Byte
- Byte (byte value) — создание объекта Byte с определенным значением value;
- Byte (String s) — создание объекта Byte на основе текстового значения s.
Поля класса Byte
- static int MAX_VALUE — максимальная величина типа byte
- static int MIN_VALUE — минимальная величина типа byte
- static >
Метод Описание byte byteValue() получение значения типа byte int compareTo(Byte byte) сравнение с объектом Byte int compareTo(Object o) сравнение с другим объектом static Byte decode(String nm) преобразование строки в Byte double doubleValue() преобразование значения в double boolean equals(Object obj) проверка на равенство с другим объектом float floatValue() преобразование значения в float int hashCode() получение hash-кода объекта int intValue() преобразование значения в int long longValue() преобразование значения в long static byte parseByte(String s) преобразование текстового значения в byte static byte parseByte(String s, int radix) преобразование текстового значения в системе счисления radix в байт short shortValue() преобразование значения в short String toString() преобразование значения в String static String toString(byte b) преобразование байтового значения в String static Byte valueOf(String s) преобразование текстового значения в Byte static Byte valueOf(String s, int radix) преобразование текстового значения в системе счисления radix в Byte
Класс Boolean
Класс Boolean является оболочкой простого логического объекта. Объект типа Boolean содержит единственное поле логического типа. Кроме того, этот класс включает методы преобразования boolean в String и обратно, а также константы и методы полезные при работе с логическим типом.
Конструкторы класса Boolean
- Boolean (boolean value) — создание логического объекта на основе аргумента;
- Boolean (String s) — создание логического объекта на основе текстового значения s [«true» | «false»].
Поля класса Boolean
- static Boolean FALSE — логический объект, соответствующий значению «ложь»
- static Boolean TRUE — логический объект, соответствующий значению «истина»
- static >
Метод Описание boolean booleanValue() получение логического значения boolean equals(Object obj) функция возвращает логическое значение по результату сравнения переданного объекта с текущим static boolean getBoolean(String name) преобразование текстового значения в логическое int hashCode() получение hash-кода объекта String toString() преобразование в текстовое значение static Boolean valueOf(String s) преобразование текстового значения в Boolean
Класс Void
В большинстве случаев, если нужно проверить возвращаемый тип метода (например, через рефлексию) можно использовать void.class — не перепутаешь с Void.class.
Использовать Void можно, например, в случаях, когда имеется обобщенный класс (generic) и необходимо, чтобы метод ничего не возвращал :
Класс Character
Для хранения символов Java использует специальный тип char. В отличие от языка C/C++, где char представляет собой целочисленный тип с размером 8 бит, в Java для char применяется кодировка Unicode и для хранения Unicode-символов используется 16 бит. Диапазон допустимых значений — от 0 до 65536 (отрицательных значений не существует).
Класс Character является оболочкой вокруг типа char. Чтобы получить значение типа char, содержащее в объекте Character, необходимо вызвать метод charValue().
Конструктор класса Character
Character имеет только один конструктор, которому в качестве параметра передается значение char.
Помимо констант MIN_VALUE и MAX_VALUE, Character содержит две константы MIN_RADIX и MAX_RADIX, которые равны минимальному и максимальному основанию системы счисления, которые используются методами (представленными ниже) для перевода отдельного цифрового символа в его целочисленный эквивалент и наоборот. Основание должно находиться в диапазоне 2–36; цифры свыше 9 представлены буквами от A до Z или их эквивалентами в нижнем регистре.
Руководство по классу Java Integer с примерами
Класс Integer является контейнером для типа данных int . Этот класс включает в себя методы преобразования значений из строки в объект Integer . Данное руководство содержит полную информацию о том, как использовать класс Integer в Java , его атрибуты и методы .
Синтаксис класса Integer
Совместимость с версиями JDK
Необходима JDK версии 1.0
Основы класса Integer
Поскольку класс Integer имеет широкую функциональность, мы решили разделить данное руководство на разделы.
Как создать экземпляр класса Integer
Есть два способа создать экземпляр класса Integer . Первый способ – использовать ключевое слово new :
Второй способ создать — использовать функцию автоупаковки ( autoboxing ) языка Java , которая конвертирует примитивный тип данных в соответствующий класс-обёртку:
Тест на равенство объектов Integer
Объекты Integer являются обёрткой для примитивного типа int . Поскольку они являются объектами, то оператор == не будет работать. Рассмотрим приведенный ниже отрывок кода:
Поскольку мы имеем дело с объектами Integer , оператор == больше не применим. Как же провести сравнение двух Java объектов Integer ? Рассмотрим приведенный ниже отрывок кода, демонстрирующий это:
Java-программа для проверки объектов Integer на равенство
Максимальное и минимальное значения Integer
Чтобы найти максимальное и минимальное значения Integer , мы обратимся к двум его полям. Максимальное значение объекта Integer ( 2147483647 ) может быть найдено с помощью вызова Integer.MAX_VALUE , а минимальное значение Integer (- 2147483648 ) – через обращение к Integer.MIN_VALUE .
Рассмотрим метод parseInt(String s) , который принимает строку в качестве аргумента и конвертирует её в объект Integer . Если мы передадим строковое значение, которое имеет целочисленный эквивалент, превышающее максимальное значение в Integer.MAX_VALUE ? Грубым примером такого сценария может служить приведенный ниже код:
Мы передали в метод parseInt аргумент, который на 1 больше максимального значения. Поэтому если мы попытаемся выполнить этот отрывок кода, компилятор выдаст исключение NumberFormatException :
Как использовать статичные методы класса Integer
Большинство методов класса Integer статичные, поэтому имеет смысл разобраться, как получить доступ к ним. Не статичные методы используются так:
Статические методы не должны использоваться таким образом, а должны вызываться так как показано ниже:
Нестатические методы вызываются через переменная.метод. Статичные вызываются через Integer.метод(аргументы… ).
Поля объекта Integer
Модификатор | Тип | Атрибут | Описание |
static | Int | MAX_VALUE | Константа, являющаяся максимальным значением данных типа int, равная 2^31-1. |
static | Int | MIN_VALUE | Константа, являющаяся минимальным значением данных типа int, равная -2^31. |
static | Int | SIZE | Число битов, использованное для представления значения типа int в двоичной форме. |
static | Class | TYPE | Экземпляр класса, представляющий примитивный тип int. |
Конструктор класса Integer
Синтаксис | Описание |
Integer(int value) | Создает новый объект Integer, который представляет указанное целочисленное значение. |
Integer(String s) | Это создает новый объект Integer, который представляет целочисленное значение, указанное строковым параметром конструктора. |
Примеры использования методов класса Integer
Модификатор | Возвращаемый тип | Метод | Описание |
static | Int | bitCount(int i) | Этот метод возвращает целочисленное значение, которое соответствует количеству единиц в двоичном представлении числа-аргумента метода. |
byte | byteValue() | Возвращает значение объекта Integer в виде типа byte. Этот метод переопределяет метод byteValue() класса Number. | |
static | Int | compare(int x, int y) | Метод просто возвращает целочисленное представление результата сравнения двух целочисленных аргументов. |
Int | compareTo(Integer anotherInteger) | Возвращает целочисленное значение результата сравнения аргумента метода и объекта Integer. | |
static | Integer | decode(String nm) | Возвращает декодированное значение строкового аргумента в объект Integer. |
Double | doubleValue() | Возвращает эквивалент объекта Integer типа double ( java double to integer ). Метод doubleValue() унаследован из класса Number. | |
boolean | equals(Object obj) | Возвращает результат сравнения объекта Integer и объекта-аргумента типа Object. Этот метод переопределяет метод equals класса Object. | |
Float | floatValue() | Возвращает эквивалент объекта Integer в типе float. Метод floatValue унаследован из класса Number. | |
static | Integer | getInteger(String nm) | Возвращает значение свойства, указанного в качестве аргумента, в объекте Integer. |
static | Integer | getInteger(String nm, int val) | Определяет целочисленное значение свойства, указанного в строковом параметре. Если свойство не найдено, возвращает объект Integer со значением, указанным во втором параметре. |
static | Integer | getInteger(String nm, Integer val) | Возвращает целочисленное значение свойства, указанного в строковом параметре. Если свойство не найдено, возвращает объект Integer, указанный во втором параметре. |
Int | hashCode() | Возвращает хэш-код объекта Integer. | |
static | Int | highestOneBit(int i) | Определяет позицию старшего бита. Возвращает значение, в котором установлен только этот бит. Если ни один из битов не установлен, возвращает 0. |
Int | intValue() | Возвращает целочисленный эквивалент объекта Integer. Метод унаследован из класса Number. | |
Long | longValue() | Возвращает значение объекта Integer как тип long. | |
static | Int | lowestOneBit(int i) | Возвращает целое число, получающееся, если оставить только младшую (крайнюю правую) единицу в двоичном представлении числа-аргумента. |
static | Int | numberOfLeadingZeros(int i) | Возвращает количества нулей слева в двоичном представлении числа-аргумента. |
static | Int | numberOfTrailingZeros(int i) | Возвращает количества нулей справа в двоичном представлении числа-аргумента. |
static | Int | parseInt(String s) | Преобразует строку-аргумент в десятичное число со знаком. |
static | Int | parseInt(String s, int radix) | Преобразует строку-аргумент в целом число со знаком в системе исчисления, указанной во втором аргументе. |
static | Int | reverse(int i) | Возвращает число, получаемое в результате перестановки битов числа-аргумента в обратном порядке. |
static | Int | reverseBytes(int i) | Возвращает число, получаемое в результате перестановки байтов числа-аргумента в обратном порядке. |
static | Int | rotateLeft(int i, int distance) | Возвращает число, полученное в результате сдвига битов числа-аргумента на указанное количество позиций влево. (Биты, вышедшие за пределы слева, возвращаются в правую часть). |
static | Int | rotateRight(int i, int distance) | Возвращает число, полученное в результате сдвига битов числа-аргумента на указанное количество позиций вправо. (Биты, вышедшие за пределы справа, возвращаются в левую часть). |
Short | shortValue() | Возвращает эквивалент объекта Integer в типе short. Этот метод переопределяет метод shortValue класса Number. | |
static | int | signum(int i) | Возвращает результат функции signum от указанного целого числа. |
static | String | toBinaryString(int i) | Возвращает строковый эквивалент двоичного представления числа-аргумента. |
static | String | toHexString(int i) | Возвращает строковое представление целочисленного аргумента в виде шестнадцатеричного числа без знака. |
static | String | toOctalString(int i) | Возвращает строковое представление целочисленного аргумента в виде восьмеричного числа без знака. |
String | toString() | Возвращает объект String, представляющий значение объекта Integer. | |
static | String | toString(int i) | Возвращает объект String, представляющий значение целочисленного аргумента. |
static | String | toString(int i, int radix) | Возвращает строковый эквивалент целого десятичного числа-аргумента в указанной системе исчисления. |
static | Integer | valueOf(int i) | Возвращает экземпляр объекта Integer, представляющий указанное целое число. |
static | Integer | valueOf(String s) | Возвращает экземпляр объекта Integer, содержащий значение, указанное в строке-аргументе. |
static | Integer | valueOf(String s, int radix) | Возвращает экземпляр объекта Integer, содержащий значение, передаваемое в строке-аргументе в системе исчисления, указанной во втором параметре. |
Данная публикация представляет собой перевод статьи « Java Integer Class Tutorial and Example » , подготовленной дружной командой проекта Интернет-технологии.ру
Java — Numbers Class
Normally, when we work with Numbers, we use primitive data types such as byte, int, long, double, etc.
Example
However, in development, we come across situations where we need to use objects instead of primitive data types. In order to achieve this, Java provides wrapper classes.
All the wrapper classes (Integer, Long, Byte, Double, Float, Short) are subclasses of the abstract class Number.
The object of the wrapper class contains or wraps its respective primitive data type. Converting primitive data types into object is called boxing, and this is taken care by the compiler. Therefore, while using a wrapper class you just need to pass the value of the primitive data type to the constructor of the Wrapper class.
And the Wrapper object will be converted back to a primitive data type, and this process is called unboxing. The Number class is part of the java.lang package.
Following is an example of boxing and unboxing −
Example
This will produce the following result −
Output
When x is assigned an integer value, the compiler boxes the integer because x is integer object. Later, x is unboxed so that they can be added as an integer.
Number Methods
Following is the list of the instance methods that all the subclasses of the Number class implements −
Sr.No. | Method & Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | xxxValue() Converts the value of this Number object to the xxx data type and returns it. Compares this Number object to the argument. Determines whether this number object is equal to the argument. Returns an Integer object holding the value of the specified primitive. Returns a String object representing the value of a specified int or Integer. This method is used to get the primitive data type of a certain String. Returns the absolute value of the argument. Returns the smallest integer that is greater than or equal to the argument. Returned as a double. Returns the largest integer that is less than or equal to the argument. Returned as a double. Returns the integer that is closest in value to the argument. Returned as a double. Returns the closest long or int, as indicated by the method’s return type to the argument. Returns the smaller of the two arguments. Returns the larger of the two arguments. Returns the base of the natural logarithms, e, to the power of the argument. Returns the natural logarithm of the argument. Returns the value of the first argument raised to the power of the second argument. Returns the square root of the argument. Returns the sine of the specified double value. Returns the cosine of the specified double value. Returns the tangent of the specified double value. Returns the arcsine of the specified double value. Returns the arccosine of the specified double value. Returns the arctangent of the specified double value. Converts rectangular coordinates (x, y) to polar coordinate (r, theta) and returns theta. Converts the argument to degrees. Converts the argument to radians. Returns a random number. What is Next?In the next section, we will be going through the Character class in Java. You will be learning how to use object Characters and primitive data type char in Java. Руководство по классу Java Integer с примерамиКласс Integer является контейнером для типа данных int . Этот класс включает в себя методы преобразования значений из строки в объект Integer . Данное руководство содержит полную информацию о том, как использовать класс Integer в Java , его атрибуты и методы . Синтаксис класса IntegerСовместимость с версиями JDKНеобходима JDK версии 1.0 Основы класса IntegerПоскольку класс Integer имеет широкую функциональность, мы решили разделить данное руководство на разделы. Как создать экземпляр класса IntegerЕсть два способа создать экземпляр класса Integer . Первый способ – использовать ключевое слово new : Второй способ создать — использовать функцию автоупаковки ( autoboxing ) языка Java , которая конвертирует примитивный тип данных в соответствующий класс-обёртку: Тест на равенство объектов IntegerОбъекты Integer являются обёрткой для примитивного типа int . Поскольку они являются объектами, то оператор == не будет работать. Рассмотрим приведенный ниже отрывок кода: Поскольку мы имеем дело с объектами Integer , оператор == больше не применим. Как же провести сравнение двух Java объектов Integer ? Рассмотрим приведенный ниже отрывок кода, демонстрирующий это: Java-программа для проверки объектов Integer на равенствоМаксимальное и минимальное значения IntegerЧтобы найти максимальное и минимальное значения Integer , мы обратимся к двум его полям. Максимальное значение объекта Integer ( 2147483647 ) может быть найдено с помощью вызова Integer.MAX_VALUE , а минимальное значение Integer (- 2147483648 ) – через обращение к Integer.MIN_VALUE . Рассмотрим метод parseInt(String s) , который принимает строку в качестве аргумента и конвертирует её в объект Integer . Если мы передадим строковое значение, которое имеет целочисленный эквивалент, превышающее максимальное значение в Integer.MAX_VALUE ? Грубым примером такого сценария может служить приведенный ниже код: Мы передали в метод parseInt аргумент, который на 1 больше максимального значения. Поэтому если мы попытаемся выполнить этот отрывок кода, компилятор выдаст исключение NumberFormatException : Как использовать статичные методы класса IntegerБольшинство методов класса Integer статичные, поэтому имеет смысл разобраться, как получить доступ к ним. Не статичные методы используются так: Статические методы не должны использоваться таким образом, а должны вызываться так как показано ниже: Нестатические методы вызываются через переменная.метод. Статичные вызываются через Integer.метод(аргументы… ). Поля объекта Integer
Конструктор класса Integer
Примеры использования методов класса Integer
Данная публикация представляет собой перевод статьи « Java Integer Class Tutorial and Example » , подготовленной дружной командой проекта Интернет-технологии.ру Adblockdetector |