Класс Integer
- Все реализованные интерфейсы:
-
Serializable,Comparable<Integer>,Constable,ConstantDesc
public final class Integer extends Number implements Comparable<Integer>, Constable, ConstantDesc
Integer оборачивает значение примитивного типа int в объект. Объект типа Integer содержит одно поле типа int. Кроме того, этот класс предоставляет несколько методов для преобразования целого числа int в String и String в int, а также другие константы и методы, полезные при работе с целым числом int.
Это класс значений; программисты должны рассматривать экземпляры, которые являются равными, как взаимозаменяемые и не должны использовать экземпляры для синхронизации, иначе может произойти непредсказуемое поведение. Например, в будущей версии синхронизация может завершиться неудачно.
Примечание к реализации: Реализации методов "битовых операций" (таких как highestOneBit и numberOfTrailingZeros) основаны на материалах из книги Генри С. Варрена-младшего "Hacker's Delight" (Addison Wesley, 2002).
- С тех пор:
- 1.0
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
BYTES |
Количество байтов, используемых для представления значения int в двоичном формате со знаком. |
static final int |
MAX_VALUE |
Константа, содержащая максимальное значение, которое может иметь int, 231-1. |
static final int |
MIN_VALUE |
Константа, содержащая минимальное значение, которое может иметь int, -231. |
static final int |
SIZE |
Количество битов, используемых для представления значения int в двоичном формате со знаком. |
static final Class |
TYPE |
Экземпляр Class, представляющий примитивный тип int. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Integer |
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии. Использование этого конструктора редко уместно. |
Integer |
Устаревший, подлежит удалению: Этот элемент API может быть удален в будущей версии. Использование этого конструктора редко уместно. |
Краткое описание методов
| Modifier and Type | Method | Description |
|---|---|---|
static int |
bitCount |
Возвращает количество единичных битов в двоичном представлении числа со знаком, дополнением до двух, для заданного int значения. |
byte |
byteValue() |
Возвращает значение этого Integer как byte после сужающего преобразования примитивов. |
static int |
compare |
Сравнивает два значения int численно. |
int |
compareTo |
Сравнивает два объекта Integer численно. |
static int |
compareUnsigned |
Сравнивает два значения int численно, рассматривая значения как беззнаковые. |
static int |
compress |
Возвращает значение, полученное путем сжатия битов заданного значения int , i, в соответствии с заданной маской битов. |
static Integer |
decode |
Декодирует String в Integer. |
Optional |
describeConstable() |
Возвращает Optional, содержащий номинальный дескриптор для этого экземпляра, который является самим экземпляром. |
static int |
divideUnsigned |
Возвращает беззнаковый результат деления первого аргумента на второй, где каждый аргумент и результат интерпретируются как беззнаковое значение. |
double |
doubleValue() |
Возвращает значение этого Integer как double после расширяющего преобразования примитивов. |
boolean |
equals |
Сравнивает этот объект с указанным объектом. |
static int |
expand |
Возвращает значение, полученное путем расширения битов заданного значения int , i, в соответствии с заданной маской битов. |
float |
floatValue() |
Возвращает значение этого Integer как float после расширяющего преобразования примитивов. |
static Integer |
getInteger |
Определяет целое значение системной переменной со заданным именем. |
static Integer |
getInteger |
Определяет целое значение системной переменной со заданным именем. |
static Integer |
getInteger |
Возвращает целое значение системной переменной со заданным именем. |
int |
hashCode() |
Возвращает код хэша для этого Integer. |
static int |
hashCode |
Возвращает код хэша для значения int ; совместимо с Integer.hashCode(). |
static int |
highestOneBit |
Возвращает значение int с не более чем одним единичным битом в позиции старшего ("самого левого") единичного бита в заданном значении int. |
int |
intValue() |
Возвращает значение этого Integer как int. |
long |
longValue() |
Возвращает значение этого Integer как long после расширяющего преобразования примитивов. |
static int |
lowestOneBit |
Возвращает значение int с не более чем одним единичным битом в позиции младшего ("самого правого") единичного бита в заданном значении int. |
static int |
max |
Возвращает большее из двух значений int как если бы вызывалась Math.max. |
static int |
min |
Возвращает меньшее из двух значений int как если бы вызывалась Math.min. |
static int |
numberOfLeadingZeros |
Возвращает количество нулевых битов, предшествующих старшему ("самого левому") единичному биту в двоичном представлении числа со знаком, дополнением до двух, для заданного значения int. |
static int |
numberOfTrailingZeros |
Возвращает количество нулевых битов, следующих за младшим ("самым правым") единичным битом в двоичном представлении числа со знаком, дополнением до двух, для заданного значения int. |
static int |
parseInt |
Разбирает аргумент CharSequence как целое со знаком int в заданной radix, начиная с указанного beginIndex и до endIndex - 1. |
static int |
parseInt |
Разбирает строковый аргумент как целое десятичное число со знаком. |
static int |
parseInt |
Разбирает строковый аргумент как целое число со знаком в заданной системе счисления, указанной вторым аргументом. |
static int |
parseUnsignedInt |
Разбирает аргумент CharSequence как беззнаковое int в заданной radix, начиная с указанного beginIndex и до endIndex - 1. |
static int |
parseUnsignedInt |
Разбирает строковый аргумент как беззнаковое десятичное целое число. |
static int |
parseUnsignedInt |
Разбирает строковый аргумент как беззнаковое целое число в заданной системе счисления, указанной вторым аргументом. |
static int |
remainderUnsigned |
Возвращает беззнаковый остаток от деления первого аргумента на второй, где каждый аргумент и результат интерпретируются как беззнаковое значение. |
Integer |
resolveConstantDesc |
Разрешает этот экземпляр как ConstantDesc, результатом чего является сам экземпляр. |
static int |
reverse |
Возвращает значение, полученное путем инвертирования порядка битов в двоичном представлении числа со знаком, дополнением до двух, для заданного int значения. |
static int |
reverseBytes |
Возвращает значение, полученное путем инвертирования порядка байтов в двоичном представлении числа со знаком, дополнением до двух, для заданного int значения. |
static int |
rotateLeft |
Возвращает значение, полученное путем циклического сдвига влево двоичного представления числа со знаком, дополнением до двух, для заданного int значения на заданное число битов. |
static int |
rotateRight |
Возвращает значение, полученное путем циклического сдвига вправо двоичного представления числа со знаком, дополнением до двух, для заданного int значения на заданное число битов. |
short |
shortValue() |
Возвращает значение этого Integer как short после сужающего преобразования примитивов. |
static int |
signum |
Возвращает функцию signum для указанного значения int. |
static int |
sum |
Складывает два целых числа согласно оператору +. |
static String |
toBinaryString |
Возвращает строковое представление целого аргумента как беззнакового целого числа в двоичной системе счисления. |
static String |
toHexString |
Возвращает строковое представление целого аргумента как беззнакового целого числа в шестнадцатеричной системе счисления. |
static String |
toOctalString |
Возвращает строковое представление целого аргумента как беззнакового целого числа в восьмеричной системе счисления. |
String |
toString() |
Возвращает объект String , представляющий значение этого Integer. |
static String |
toString |
Возвращает объект String , представляющий указанное целое число. |
static String |
toString |
Возвращает строковое представление первого аргумента в системе счисления, заданной вторым аргументом. |
static long |
toUnsignedLong |
Преобразует аргумент в long с помощью беззнакового преобразования. |
static String |
toUnsignedString |
Возвращает строковое представление аргумента в виде беззначного десятичного значения. |
static String |
toUnsignedString |
Возвращает строковое представление первого аргумента в виде беззначного целого значения в указанной основанием системы счисления (радикс). |
static Integer |
valueOf |
Возвращает экземпляр Integer , представляющий указанное значение int. |
static Integer |
valueOf |
Возвращает объект Integer , содержащий значение указанного String. |
static Integer |
valueOf |
Возвращает объект Integer , содержащий значение, извлеченное из указанного String при парсинге с основанием, заданным вторым аргументом. |
Подробное описание полей
MIN_VALUE
@Native public static final int MIN_VALUE
int, -231.- См. также:
MAX_VALUE
@Native public static final int MAX_VALUE
int, 231-1.- См. также:
TYPE
public static final Class<Integer> TYPE
Class, представляющий примитивный тип int.- С тех пор как:
- 1.1
SIZE
@Native public static final int SIZE
int в двоичной форме со знаком.- С тех пор как:
- 1.5
- См. также:
BYTES
public static final int BYTES
int в двоичной форме со знаком.- С тех пор как:
- 1.8
- См. также:
Подробное описание конструкторов
Integer
@Deprecated(since="9", forRemoval=true) public Integer(int value)
valueOf(int) обычно является лучшим выбором, так как он, вероятно, обеспечит значительно лучшую производительность по памяти и времени.Integer, представляющий заданное целое значение int.- Параметры:
-
value- значение, которое должно представляться объектом целого числаInteger.
Integer
@Deprecated(since="9", forRemoval=true) public Integer(String s) throws NumberFormatException
parseInt(String) для преобразования строки в примитивное целое число или valueOf(String) для преобразования строки в объект целого числа.Integer, представляющий целое значение, указанное параметром String. Строка преобразуется в целое значение точно так же, как это делает метод parseInt, для основания 10.- Параметры:
-
s- строка, которая должна быть преобразована в целое числоInteger. - Исключения:
-
NumberFormatException- если строка не содержит целого числа, которое можно проанализировать.
Подробное описание методов
toString
public static String toString(int i, int radix)
Если основание меньше Character.MIN_RADIX или больше Character.MAX_RADIX, то используется основание 10.
Если первый аргумент отрицательный, первым элементом результата является символ ASCII минус '-' ('\u002D'). Если первый аргумент не отрицательный, знак в результате не отображается.
Остальные символы результата представляют собой абсолютное значение первого аргумента. Если абсолютное значение равно нулю, оно представляется одним символом нуля '0' ('\u0030'); в противном случае, первый символ представления абсолютного значения не будет символом нуля. В качестве цифр используются следующие символы ASCII:
0123456789abcdefghijklmnopqrstuvwxyz Это символы '\u0030' по '\u0039' и '\u0061' по '\u007A' . Если основание равно N, то первые N из этих символов используются в качестве цифр в основании N в указанном порядке. Таким образом, цифры для шестнадцатеричного (основание 16) — 0123456789abcdef. Если требуются заглавные буквы, на результате можно вызвать метод String.toUpperCase(): Integer.toString(n, 16).toUpperCase()
- Параметры:
-
i- целое число, которое нужно преобразовать в строку. -
radix- основание, которое нужно использовать в строковом представлении. - Возвращает:
- строковое представление аргумента в заданном основании.
- См. также:
toUnsignedString
public static String toUnsignedString(int i, int radix)
Если основание меньше Character.MIN_RADIX или больше Character.MAX_RADIX, то используется основание 10.
Обратите внимание, что поскольку первый аргумент обрабатывается как значение без знака, символ ведущего знака не выводится.
Если абсолютное значение равно нулю, оно представляется одним символом нуля '0' ('\u0030'); в противном случае, первый символ представления абсолютного значения не будет символом нуля.
Поведение оснований и символов, используемых в качестве цифр, совпадает с toString.
- Параметры:
-
i- целое число, которое нужно преобразовать в строку без знака. -
radix- основание, которое нужно использовать в строковом представлении. - Возвращает:
- строковое представление аргумента без знака в заданном основании.
- С тех пор как:
- 1.8
- См. также:
toHexString
public static String toHexString(int i)
Значение целого числа без знака — это аргумент плюс 232, если аргумент отрицательный; в противном случае оно равно аргументу. Это значение преобразуется в строку ASCII-цифр в шестнадцатеричной системе (основание 16) без дополнительных ведущих 0.
Значение аргумента можно восстановить из возвращаемой строки s с помощью вызова Integer.parseUnsignedInt(s, 16).
Если абсолютное значение без знака равно нулю, оно представляется одним символом нуля '0' ('\u0030'); в противном случае, первый символ представления абсолютного значения без знака не будет символом нуля. Следующие символы используются в качестве шестнадцатеричных цифр:
0123456789abcdef Это символы '\u0030' по '\u0039' и '\u0061' по '\u0066' . Если требуются заглавные буквы, на результате можно вызвать метод String.toUpperCase(): Integer.toHexString(n).toUpperCase()
- Примечание API:
- Класс
HexFormatпредоставляет форматирование и парсинг массивов байтов и примитивов для возврата строки или добавления кAppendable.HexFormatформатирует и анализирует шестнадцатеричные символы в верхнем или нижнем регистре, с ведущими нулями и для массивов байтов включает для каждого байта разделитель, префикс и суффикс. - Параметры:
-
i- целое число, которое нужно преобразовать в строку. - Возвращает:
- строковое представление значения целого числа без знака, представленного аргументом в шестнадцатеричной системе (основание 16).
- С тех пор как:
- 1.0.2
- См. также:
toOctalString
public static String toOctalString(int i)
Беззнаковое целое значение равно аргументу плюс 232, если аргумент отрицательный; в противном случае оно равно аргументу. Это значение преобразуется в строку ASCII-цифр в восьмеричной системе (основание 8) без дополнительных ведущих 0.
Значение аргумента может быть восстановлено из возвращаемой строки s, вызвав Integer.parseUnsignedInt(s, 8).
Если беззнаковое значение равно нулю, оно представлено одиночным символом ноль '0' ('\u0030'); в противном случае, первый символ представления беззнакового значения не будет символом ноль. Следующие символы используются как восьмеричные цифры:
01234567 Эти символы '\u0030' через '\u0037'. - Параметры:
-
i- целое число, которое необходимо преобразовать в строку. - Возвращает:
- строковое представление беззнакового целочисленного значения, представленного аргументом в восьмеричной системе счисления (основание 8).
- С:
- 1.0.2
- См. также:
toBinaryString
public static String toBinaryString(int i)
Беззнаковое целое значение равно аргументу плюс 232, если аргумент отрицательный; в противном случае оно равно аргументу. Это значение преобразуется в строку ASCII-цифр в двоичной системе (основание 2) без дополнительных ведущих 0.
Значение аргумента может быть восстановлено из возвращаемой строки s, вызвав Integer.parseUnsignedInt(s, 2).
Если беззнаковое значение равно нулю, оно представлено одиночным символом ноль '0' ('\u0030'); в противном случае, первый символ представления беззнакового значения не будет символом ноль. Символы '0' ('\u0030') и
'1' ('\u0031') используются как двоичные цифры.
- Параметры:
-
i- целое число, которое необходимо преобразовать в строку. - Возвращает:
- строковое представление беззнакового целочисленного значения, представленного аргументом в двоичной системе счисления (основание 2).
- С:
- 1.0.2
- См. также:
toString
public static String toString(int i)
String, представляющий указанное целое число. Аргумент преобразуется в знаковое десятичное представление и возвращается как строка, точно так же, как если бы аргумент и основание 10 были переданы в качестве аргументов методу toString(int, int).- Параметры:
-
i- целое число, которое необходимо преобразовать. - Возвращает:
- строковое представление аргумента в десятичной системе счисления.
toUnsignedString
public static String toUnsignedString(int i)
toUnsignedString(int, int).- Параметры:
-
i- целое число, которое необходимо преобразовать в беззнаковую строку. - Возвращает:
- беззнаковое строковое представление аргумента.
- С:
- 1.8
- См. также:
parseInt
public static int parseInt(String s, int radix) throws NumberFormatException
Character.digit(char, int) положительное значение), за исключением того, что первый символ может быть ASCII-знаком минус '-' ('\u002D') для указания отрицательного значения или ASCII-знаком плюс '+' ('\u002B') для указания положительного значения. Результирующее целое значение возвращается. Исключение типа NumberFormatException выбрасывается, если возникает любая из следующих ситуаций:
- Первый аргумент
nullили строка нулевой длины. - Основание меньше
Character.MIN_RADIXили большеCharacter.MAX_RADIX. - Любой символ строки не является цифрой указанного основания, за исключением того, что первый символ может быть знаком минус
'-'('\u002D') или знаком плюс'+'('\u002B') при условии, что длина строки больше 1. - Значение, представленное строкой, не является значением типа
int.
Примеры:
parseInt("0", 10) returns 0
parseInt("473", 10) returns 473
parseInt("+42", 10) returns 42
parseInt("-0", 10) returns 0
parseInt("-FF", 16) returns -255
parseInt("1100110", 2) returns 102
parseInt("2147483647", 10) returns 2147483647
parseInt("-2147483648", 10) returns -2147483648
parseInt("2147483648", 10) throws a NumberFormatException
parseInt("99", 8) throws a NumberFormatException
parseInt("Kona", 10) throws a NumberFormatException
parseInt("Kona", 27) returns 411787
- Параметры:
-
s- строка, содержащая целочисленное представление для парсинга -
radix- основание, используемое при парсингеs. - Возвращает:
- целое число, представленное строковым аргументом в указанном основании.
- Исключения:
-
NumberFormatException- если строка не содержит парсируемое целое число.
parseInt
public static int parseInt(CharSequence s, int beginIndex, int endIndex, int radix) throws NumberFormatException
CharSequence как знаковое int в указанном radix, начиная с указанного beginIndex и до endIndex - 1.- Параметры:
-
s- объект, содержащий строковое представление целого числа для парсинга -
beginIndex- начальный индекс, включительно. -
endIndex- конечный индекс, не включительно. -
radix- основание, используемое при парсингеs. - Возвращает:
- знаковое целое число, представленное подпоследовательностью в указанном основании.
- Исключения:
-
NullPointerException- еслиsравно null. -
IndexOutOfBoundsException- еслиbeginIndexотрицательно, или еслиbeginIndexбольшеendIndex, или еслиendIndexбольшеs.length(). -
NumberFormatException- еслиCharSequenceне содержит парсируемое целое число в указанномradix, или еслиradixменьшеCharacter.MIN_RADIXили большеCharacter.MAX_RADIX. - С:
- 9
parseInt
public static int parseInt(String s) throws NumberFormatException
'-' ('\u002D') для указания отрицательного значения или ASCII-знаком плюс '+' ('\u002B') для указания положительного значения. Результирующее целочисленное значение возвращается, точно так же, как если бы аргумент и основание 10 были переданы в качестве аргументов методу parseInt(java.lang.String, int).- Параметры:
-
s- строка, содержащая целочисленное представление для парсинга - Возвращает:
- целое значение, представленное аргументом в десятичной системе счисления.
- Исключения:
-
NumberFormatException- если строка не содержит парсируемое целое число.
parseUnsignedInt
public static int parseUnsignedInt(String s, int radix) throws NumberFormatException
MAX_VALUE. Символы в строке должны быть цифрами указанного основания (как определено тем, возвращает ли Character.digit(char, int) неотрицательное значение), за исключением того, что первый символ может быть ASCII-знаком плюс '+' ('\u002B'). Результирующее целое значение возвращается. Исключение типа NumberFormatException выбрасывается, если возникает любая из следующих ситуаций:
- Первый аргумент
nullили строка нулевой длины. - Основание меньше
Character.MIN_RADIXили большеCharacter.MAX_RADIX. - Любой символ строки не является цифрой указанного основания, за исключением того, что первый символ может быть знаком плюс
'+'('\u002B') при условии, что длина строки больше 1. - Значение, представленное строкой, больше максимального беззнакового
int, 232-1.
- Параметры:
-
s- строка, содержащая беззнаковое целочисленное представление для парсинга -
radix- основание, используемое при парсингеs. - Возвращает:
- целое число, представленное строковым аргументом в указанном основании.
- Исключения:
-
NumberFormatException- если строка не содержит парсируемое беззнаковое целое число. - С:
- 1.8
parseUnsignedInt
public static int parseUnsignedInt(CharSequence s, int beginIndex, int endIndex, int radix) throws NumberFormatException
CharSequence как беззнаковое int в указанном radix, начиная с указанного beginIndex и заканчивая endIndex - 1. Метод не предпринимает мер для защиты от изменения аргумента во время парсинга.
- Parameters:
-
s- последовательностьCharSequenceсодержащая беззнаковоеintпредставление для парсинга -
beginIndex- начальный индекс, включая. -
endIndex- конечный индекс, не включая. -
radix- основание, используемое при парсингеs. - Returns:
- беззнаковое
intпредставленное подпоследовательностью в заданном основании. - Throws:
-
NullPointerException- еслиsравно null. -
IndexOutOfBoundsException- еслиbeginIndexотрицательное, илиbeginIndexбольшеendIndex, илиendIndexбольшеs.length(). -
NumberFormatException- если последовательностьCharSequenceне содержит парсируемого беззнаковогоintв заданномradix, или еслиradixменьшеCharacter.MIN_RADIXили большеCharacter.MAX_RADIX. - Since:
- 9
parseUnsignedInt
public static int parseUnsignedInt(String s) throws NumberFormatException
'+' ('\u002B'). Результирующее целое значение возвращается точно так же, как если бы аргумент и основание 10 были переданы в метод parseUnsignedInt(java.lang.String, int).- Parameters:
-
s- строка, содержащая беззнаковоеintпредставление для парсинга - Returns:
- беззнаковое целое значение, представленное аргументом в десятичном формате.
- Throws:
-
NumberFormatException- если строка не содержит парсируемое беззнаковое целое число. - Since:
- 1.8
valueOf
public static Integer valueOf(String s, int radix) throws NumberFormatException
Integer, содержащий значение, извлеченное из указанной String, при парсинге с основанием, заданным вторым аргументом. Первый аргумент интерпретируется как представление знакового целого числа в основании, заданном вторым аргументом, точно так же, как если бы аргументы были переданы в метод parseInt(java.lang.String, int). Результатом является объект Integer, представляющий целое значение, заданное строкой. Другими словами, этот метод возвращает объект Integer, равный значению:
Integer.valueOf(Integer.parseInt(s, radix))
- Parameters:
-
s- строка для парсинга. -
radix- основание, используемое для интерпретацииs - Returns:
- объект
Integer, содержащий значение, представленное строковым аргументом в заданном основании. - Throws:
-
NumberFormatException- если строка не содержит парсируемое целое число.
valueOf
public static Integer valueOf(String s) throws NumberFormatException
Integer, содержащий значение указанной String. Аргумент интерпретируется как представление знакового десятичного целого числа, точно так же, как если бы аргумент был передан в метод parseInt(java.lang.String). Результатом является объект Integer, представляющий целое значение, заданное строкой. Другими словами, этот метод возвращает объект Integer, равный значению:
Integer.valueOf(Integer.parseInt(s))
- Parameters:
-
s- строка для парсинга. - Returns:
- объект
Integer, содержащий значение, представленное строковым аргументом. - Throws:
-
NumberFormatException- если строка не может быть обработана как целое число.
valueOf
public static Integer valueOf(int i)
Integer, представляющий указанное целое значение int. Если новый экземпляр Integer не требуется, этот метод следует предпочесть конструктору Integer(int), так как он, скорее всего, обеспечит значительно лучшую производительность по памяти и времени за счет кэширования часто запрашиваемых значений. Этот метод всегда будет кэшировать значения в диапазоне от -128 до 127 включительно и может кэшировать другие значения за пределами этого диапазона.- Parameters:
-
i- целое значение. - Returns:
- экземпляр
Integer, представляющийi. - Since:
- 1.5
byteValue
public byte byteValue()
Integer как byte после сужения примитивного преобразования.- Overrides:
-
byteValueв классеNumber - Returns:
- числовое значение, представленное этим объектом после преобразования в тип
byte. - См. Спецификацию языка Java:
- 5.1.3 Сужение примитивного преобразования
shortValue
public short shortValue()
Integer как short после сужения примитивного преобразования.- Overrides:
-
shortValueв классеNumber - Returns:
- числовое значение, представленное этим объектом после преобразования в тип
short. - См. Спецификацию языка Java:
- 5.1.3 Сужение примитивного преобразования
intValue
public int intValue()
Integer как int.- Specified by:
-
intValueв классеNumber - Returns:
- числовое значение, представленное этим объектом после преобразования в тип
int.
longValue
public long longValue()
Integer как long после расширения примитивного преобразования.- Specified by:
-
longValueв классеNumber - Returns:
- числовое значение, представленное этим объектом после преобразования в тип
long. - См. Спецификацию языка Java:
- 5.1.2 Расширение примитивного преобразования
- См. Также:
floatValue
public float floatValue()
Integer как float после расширения примитивного преобразования.- Specified by:
-
floatValueв классеNumber - Returns:
- числовое значение, представленное этим объектом после преобразования в тип
float. - См. Спецификацию языка Java:
- 5.1.2 Расширение примитивного преобразования
doubleValue
public double doubleValue()
Integer как double после расширения примитивного преобразования.- Specified by:
-
doubleValueв классеNumber - Returns:
- числовое значение, представленное этим объектом после преобразования в тип
double. - См. Спецификацию языка Java:
- 5.1.2 Расширение примитивного преобразования
toString
public String toString()
Integer. Значение преобразуется в знаковое десятичное представление и возвращается в виде строки точно так же, как если бы целое значение было передано в метод toString(int).- Overrides:
-
toStringв классеObject - Returns:
- строковое представление значения этого объекта в десятичной системе.
hashCode
public int hashCode()
Integer.- Overrides:
-
hashCodeв классеObject - Returns:
- значение кода хэширования для этого объекта, равное примитивному целому значению, представленному этим объектом
Integer. - См. Также:
hashCode
public static int hashCode(int value)
Integer.hashCode(). - Parameters:
-
value- значение для хэширования - Returns:
- значение кода хэша для значения.
- Since:
- 1.8
equals
public boolean equals(Object obj)
true, если и только если аргумент не null и является объектом типа Integer, содержащим то же значение, что и этот объект.- Overrides:
-
equalsв классеObject - Parameters:
-
obj- объект для сравнения. - Returns:
-
true, если объекты идентичны;falseв противном случае. - See Also:
getInteger
public static Integer getInteger(String nm)
Первый аргумент обрабатывается как имя системной переменной. Доступ к системным переменным осуществляется через метод System.getProperty(java.lang.String). Строковое значение этой переменной затем интерпретируется как целое число с использованием грамматики, поддерживаемой decode, и возвращается объект типа Integer, представляющий это значение.
Если переменной с указанным именем не существует, если указанное имя пустое или null, или если переменная не имеет правильного числового формата, то возвращается null.
Другими словами, этот метод возвращает объект типа Integer равный значению:
getInteger(nm, null)
- Parameters:
-
nm- имя переменной. - Returns:
- значение
Integerпеременной. - Throws:
-
SecurityException- по тем же причинам, что иSystem.getProperty - See Also:
getInteger
public static Integer getInteger(String nm, int val)
Первый аргумент обрабатывается как имя системной переменной. Доступ к системным переменным осуществляется через метод System.getProperty(java.lang.String). Строковое значение этой переменной затем интерпретируется как целое число с использованием грамматики, поддерживаемой decode, и возвращается объект типа Integer представляющий это значение.
Второй аргумент - значение по умолчанию. Объект типа Integer, представляющий значение второго аргумента, возвращается, если переменной с указанным именем не существует, если переменная не имеет правильного числового формата, или если указанное имя пустое или null.
Другими словами, этот метод возвращает объект типа Integer равный значению:
getInteger(nm, Integer.valueOf(val)) но на практике может быть реализован, например, следующим образом: , чтобы избежать ненужного выделения памяти для объектаInteger result = getInteger(nm, null); return (result == null) ? Integer.valueOf(val) : result;
Integer когда значение по умолчанию не нужно.- Parameters:
-
nm- имя переменной. -
val- значение по умолчанию. - Returns:
- значение
Integerпеременной. - Throws:
-
SecurityException- по тем же причинам, что иSystem.getProperty - See Also:
getInteger
public static Integer getInteger(String nm, Integer val)
System.getProperty(java.lang.String). Строковое значение этой переменной затем интерпретируется как целое число, согласно методу decode, и возвращается объект типа Integer представляющий это значение; коротко: - Если значение переменной начинается с двух ASCII-символов
0xили ASCII-символа#, не за которым следует знак минус, то остальная часть интерпретируется как шестнадцатеричное целое число точно так же, как методомvalueOf(java.lang.String, int)с основанием 16. - Если значение переменной начинается с ASCII-символа
0за которым следует другой символ, то оно интерпретируется как восьмеричное целое число точно так же, как методомvalueOf(java.lang.String, int)с основанием 8. - В противном случае значение переменной интерпретируется как десятичное целое число точно так же, как методом
valueOf(java.lang.String, int)с основанием 10.
Второй аргумент - значение по умолчанию. Значение по умолчанию возвращается, если переменной с указанным именем не существует, если переменная не имеет правильного числового формата, или если указанное имя пустое или null.
- Parameters:
-
nm- имя переменной. -
val- значение по умолчанию. - Returns:
- значение
Integerпеременной. - Throws:
-
SecurityException- по тем же причинам, что иSystem.getProperty - See Also:
decode
public static Integer decode(String nm) throws NumberFormatException
String в Integer. Принимает десятичные, шестнадцатеричные и восьмеричные числа, заданные следующей грамматикой: ДесятичноеЧисло, ШестнадцатеричныеЦифры и ВосьмеричныеЦифры определены в разделе 3.10.1 спецификации языка Java, за исключением того, что подчеркивания между цифрами не допускаются.
- ДекодируемаяСтрока:
- Знакопционально ДесятичноеЧисло
- Знакопционально
0xШестнадцатеричныеЦифры- Знакопционально
0XШестнадцатеричныеЦифры- Знакопционально
#ШестнадцатеричныеЦифры- Знакопционально
0ВосьмеричныеЦифры- Знак:
-+
Последовательность символов после необязательного знака и/или спецификатора основания ("0x", "0X", "#" или ведущий ноль) анализируется методом
Integer.parseInt с указанным основанием (10, 16 или 8). Эта последовательность символов должна представлять положительное значение, в противном случае будет брошено исключение NumberFormatException. Результат инвертируется, если первый символ указанной
String - это знак минус. В String не допускаются пробелы.
- Parameters:
-
nm-Stringдля декодирования. - Returns:
- объект типа
Integerсодержащий значениеintпредставленноеnm - Throws:
-
NumberFormatException- еслиStringне содержит анализируемое целое число. - See Also:
compareTo
public int compareTo(Integer anotherInteger)
- Specified by:
-
compareToв интерфейсеComparable<Integer> - Parameters:
-
anotherInteger-Integerдля сравнения. - Returns:
- значение
0если этотIntegerравен аргументуInteger; значение меньше0если этотIntegerчисленно меньше аргументаInteger; и значение больше0если этотIntegerчисленно больше аргументаInteger(сравнение со знаком). - Since:
- 1.2
compare
public static int compare(int x, int y)
Integer.valueOf(x).compareTo(Integer.valueOf(y))
- Parameters:
-
x- первое целое число для сравнения -
y- второе целое число для сравнения - Returns:
- значение
0еслиx == y; значение меньше0еслиx < y; и значение больше0еслиx > y - Since:
- 1.7
compareUnsigned
public static int compareUnsigned(int x, int y)
int численно, рассматривая значения как беззнаковые.- Параметры:
-
x- первое значениеintдля сравнения -
y- второе значениеintдля сравнения - Возвращает:
- значение
0еслиx == y; значение меньше0еслиx < yкак беззнаковые значения; и значение больше0еслиx > yкак беззнаковые значения - С:
- 1.8
toUnsignedLong
public static long toUnsignedLong(int x)
long с помощью беззнакового преобразования. При беззнаковом преобразовании в long, старшие 32 бита long равны нулю, а младшие 32 бита равны битам целочисленного аргумента. Следовательно, нулевые и положительные значения int отображаются на численно равное значение long, а отрицательные значения
int отображаются на значение long равное вводу плюс 232.- Параметры:
-
x- значение для преобразования в беззнаковоеlong - Возвращает:
- аргумент, преобразованный в
longс помощью беззнакового преобразования - С:
- 1.8
divideUnsigned
public static int divideUnsigned(int dividend, int divisor)
Обратите внимание, что в арифметике со знаком дополнения к двум три других основных арифметических операции сложения, вычитания и умножения побитово идентичны, если оба операнда рассматриваются как со знаком или оба как беззнаковые. Поэтому отдельные
addUnsigned и т. д. методы не предоставляются.
- Параметры:
-
dividend- делимое -
divisor- делитель - Возвращает:
- беззнаковое частное от деления первого аргумента на второй аргумент
- С:
- 1.8
- См. также:
remainderUnsigned
public static int remainderUnsigned(int dividend, int divisor)
- Параметры:
-
dividend- делимое -
divisor- делитель - Возвращает:
- беззнаковый остаток от деления первого аргумента на второй аргумент
- С:
- 1.8
- См. также:
highestOneBit
public static int highestOneBit(int i)
int с не более чем одним битом 1, в позиции старшего бита (самого левого) в указанном значении int. Возвращает ноль, если указанное значение не имеет битов 1 в двоичном представлении со знаком дополнения, то есть если оно равно нулю.- Параметры:
-
i- значение, для которого необходимо вычислить старший бит 1 - Возвращает:
- значение
intс одним битом 1, в позиции старшего бита в указанном значении, или ноль, если указанное значение само равно нулю. - С:
- 1.5
lowestOneBit
public static int lowestOneBit(int i)
int с не более чем одним битом 1, в позиции младшего бита (самого правого) в указанном значении int. Возвращает ноль, если указанное значение не имеет битов 1 в двоичном представлении со знаком дополнения, то есть если оно равно нулю.- Параметры:
-
i- значение, для которого необходимо вычислить младший бит 1 - Возвращает:
- значение
intс одним битом 1, в позиции младшего бита в указанном значении, или ноль, если указанное значение само равно нулю. - С:
- 1.5
numberOfLeadingZeros
public static int numberOfLeadingZeros(int i)
int. Возвращает 32, если указанное значение не имеет битов 1 в двоичном представлении со знаком дополнения, то есть если оно равно нулю. Обратите внимание, что этот метод тесно связан с логарифмом по основанию 2. Для всех положительных значений x:
- floor(log2(x)) =
31 - numberOfLeadingZeros(x) - ceil(log2(x)) =
32 - numberOfLeadingZeros(x - 1)
- Параметры:
-
i- значение, для которого необходимо вычислить количество старших нулей - Возвращает:
- количество нулевых битов, предшествующих старшему биту 1 (самый слева) в двоичном представлении со знаком дополнения к двум указанного значения
int, или 32, если значение равно нулю. - С:
- 1.5
numberOfTrailingZeros
public static int numberOfTrailingZeros(int i)
int. Возвращает 32, если указанное значение не имеет битов 1 в двоичном представлении со знаком дополнения, то есть если оно равно нулю.- Параметры:
-
i- значение, для которого необходимо вычислить количество младших нулей - Возвращает:
- количество нулевых битов, следующих за младшим битом 1 (самый справа) в двоичном представлении со знаком дополнения к двум указанного значения
int, или 32, если значение равно нулю. - С:
- 1.5
bitCount
public static int bitCount(int i)
int. Эта функция иногда называется подсчетом количества.- Параметры:
-
i- значение, биты которого подлежат подсчету - Возвращает:
- количество битов 1 в двоичном представлении со знаком дополнения к двум указанного значения
int. - С:
- 1.5
rotateLeft
public static int rotateLeft(int i, int distance)
int на указанное число битов. (Биты, смещенные за пределы левой, или старшей, стороны, повторно входят в правую, или младшую.) Обратите внимание, что циклический сдвиг влево с отрицательным расстоянием эквивалентен циклическому сдвигу вправо: rotateLeft(val, -distance) == rotateRight(val,
distance). Также обратите внимание, что циклический сдвиг на любое кратное 32 – это бесполезная операция, поэтому все, кроме последних пяти битов, расстояния сдвига можно игнорировать, даже если расстояние отрицательно: rotateLeft(val,
distance) == rotateLeft(val, distance & 0x1F).
- Параметры:
-
i- значение, биты которого следует сдвинуть влево -
distance- число битовых позиций для сдвига влево - Возвращает:
- значение, полученное путем циклического сдвига влево двоичного представления со знаком дополнения к двум указанного значения
intна указанное число битов. - С:
- 1.5
rotateRight
public static int rotateRight(int i, int distance)
int на указанное число битов. (Биты, смещенные за пределы правой, или младшей, стороны, повторно входят в левую, или старшую.) Обратите внимание, что циклический сдвиг вправо с отрицательным расстоянием эквивалентен циклическому сдвигу влево: rotateRight(val, -distance) == rotateLeft(val,
distance). Также обратите внимание, что циклический сдвиг на любое кратное 32 – это бесполезная операция, поэтому все, кроме последних пяти битов, расстояния сдвига можно игнорировать, даже если расстояние отрицательно: rotateRight(val,
distance) == rotateRight(val, distance & 0x1F).
- Параметры:
-
i- значение, биты которого следует сдвинуть вправо -
distance- число битовых позиций для сдвига вправо - Возвращает:
- значение, полученное путем циклического сдвига вправо двоичного представления со знаком дополнения к двум указанного значения
intна указанное число битов. - С:
- 1.5
reverse
public static int reverse(int i)
int.- Параметры:
-
i- значение, которое должно быть инвертировано - Возвращает:
- значение, полученное путем инвертирования порядка битов в указанном значении
int. - С:
- 1.5
compress
public static int compress(int i, int mask)
int значения, i, в соответствии с указанной битовой маской. Для каждого бита значения mb маски, от младшего к старшему, значение бита i в той же позиции бита, что и у mb, присваивается сжатому значению непрерывно, начиная с младшего бита. Все старшие биты сжатого значения устанавливаются в ноль.
- Примечание API:
- Рассмотрим простой случай сжатия цифр шестнадцатеричного значения: Начиная с младшей шестнадцатеричной цифры в позиции 0 справа, маска
// Compressing drink to food compress(0xCAFEBABE, 0xFF00FFF0) == 0xCABAB0xFF00FFF0выбирает шестнадцатеричные цифры в позициях 1, 2, 3, 6 и 7 значения0xCAFEBABE. Выбранные цифры появляются в результирующем сжатом значении непрерывно, начиная с позиции цифры 0 в том же порядке.Следующие тождества возвращают
trueи полезны для понимания поведенияcompress:// Returns 1 if the bit at position n is one compress(x, 1 << n) == (x >> n & 1) // Logical shift right compress(x, -1 << n) == x >>> n // Any bits not covered by the mask are ignored compress(x, m) == compress(x & m, m) // Compressing a value by itself compress(m, m) == (m == -1 || m == 0) ? m : (1 << bitCount(m)) - 1 // Expanding then compressing with the same mask compress(expand(x, m), m) == x & compress(m, m)Операция Sheep And Goats (SAG) (см. Hacker's Delight, раздел 7.7) может быть реализована следующим образом:
int compressLeft(int i, int mask) { // This implementation follows the description in Hacker's Delight which // is informative. A more optimal implementation is: // Integer.compress(i, mask) << -Integer.bitCount(mask) return Integer.reverse( Integer.compress(Integer.reverse(i), Integer.reverse(mask))); } int sag(int i, int mask) { return compressLeft(i, mask) | Integer.compress(i, ~mask); } // Separate the sheep from the goats sag(0xCAFEBABE, 0xFF00FFF0) == 0xCABABFEE - Параметры:
-
i- значение, биты которого нужно сжать -
mask- битовая маска - Возвращает:
- сжатое значение
- С:
- 19
- См. также:
expand
public static int expand(int i, int mask)
int значения, i, в соответствии с указанной битовой маской. Для каждого бита значения mb маски, от младшего к старшему, следующее смежное битовое значение i, начиная с младшего бита, присваивается расширенному значению в той же позиции бита, что и mb. Все остальные биты расширенного значения устанавливаются в ноль.
- Примечание API:
- Рассмотрим простой случай расширения цифр шестнадцатеричного значения: Начиная с младшей шестнадцатеричной цифры в позиции 0 справа, маска
expand(0x0000CABAB, 0xFF00FFF0) == 0xCA00BAB00xFF00FFF0выбирает первые пять шестнадцатеричных цифр0x0000CABAB. Выбранные цифры появляются в результирующем расширенном значении в порядке в позициях 1, 2, 3, 6 и 7.Следующие тождества возвращают
trueи полезны для понимания поведенияexpand:// Logically shift right the bit at position 0 expand(x, 1 << n) == (x & 1) << n // Logically shift right expand(x, -1 << n) == x << n // Expanding all bits returns the mask expand(-1, m) == m // Any bits not covered by the mask are ignored expand(x, m) == expand(x, m) & m // Compressing then expanding with the same mask expand(compress(x, m), m) == x & mОперация выбора для определения позиции бита с индексом
nвintзначении может быть реализована следующим образом:int select(int i, int n) { // the one-bit in i (the mask) with index n int nthBit = Integer.expand(1 << n, i); // the bit position of the one-bit with index n return Integer.numberOfTrailingZeros(nthBit); } // The one-bit with index 0 is at bit position 1 select(0b10101010_10101010, 0) == 1 // The one-bit with index 3 is at bit position 7 select(0b10101010_10101010, 3) == 7 - Параметры:
-
i- значение, биты которого нужно расширить -
mask- битовая маска - Возвращает:
- расширенное значение
- С:
- 19
- См. также:
signum
public static int signum(int i)
int значения. (Возвращаемое значение равно -1, если заданное значение отрицательное; 0, если заданное значение равно нулю; и 1, если заданное значение положительное.)- Параметры:
-
i- значение, для которого нужно вычислить signum - Возвращает:
- функцию signum указанного
intзначения. - С:
- 1.5
reverseBytes
public static int reverseBytes(int i)
int значения.- Параметры:
-
i- значение, байты которого нужно переставить - Возвращает:
- значение, полученное путём перестановки байтов в указанном
intзначении. - С:
- 1.5
sum
public static int sum(int a, int b)
- Параметры:
-
a- первый операнд -
b- второй операнд - Возвращает:
- сумму
aиb - С:
- 1.8
- См. также:
max
public static int max(int a, int b)
int значений, как если бы вызывалась Math.max.- Параметры:
-
a- первый операнд -
b- второй операнд - Возвращает:
- большее из
aиb - С:
- 1.8
- См. также:
min
public static int min(int a, int b)
int значений, как если бы вызывалась Math.min.- Параметры:
-
a- первый операнд -
b- второй операнд - Возвращает:
- меньшее из
aиb - С:
- 1.8
- См. также:
describeConstable
public Optional<Integer> describeConstable()
Optional, содержащую номинальный дескриптор для этого экземпляра, которым является сам экземпляр.- Указано в:
-
describeConstableв интерфейсеConstable - Возвращает:
Optional, описывающий экземпляр Integer- С:
- 12
resolveConstantDesc
public Integer resolveConstantDesc(MethodHandles.Lookup lookup)
ConstantDesc, результатом чего является сам экземпляр.- Указано в:
-
resolveConstantDescв интерфейсеConstantDesc - Параметры:
-
lookup- игнорируется - Возвращает:
- экземпляр Integer
- С:
- 12
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html