鴻蒙OS Integer

2022-05-16 17:35 更新

Integer

java.lang.Object

|---java.lang.Number

|---|---java.lang.Integer

public final class Integer
extends Number
implements Comparable<Integer>

Integer 類將原始類型 int 的值包裝在一個對象中。 Integer 類型的對象包含一個類型為 int 的字段。

此外,該類提供了幾種將 int 轉(zhuǎn)換為 String 和 String 轉(zhuǎn)換為 int 的方法,以及在處理 int 時有用的其他常量和方法。

實現(xiàn)說明:“bit twiddling”方法(例如highestOneBit 和numberOfTrailingZeros)的實現(xiàn)基于Henry S. Warren, Jr. 的Hacker's Delight(Addison Wesley,2002)中的材料。

字段摘要

修飾符和類型 字段 描述
static int BYTES 用于以二進制補碼形式表示 int 值的字節(jié)數(shù)。
static int MAX_VALUE 一個保持 int 可以具有的最大值的常數(shù),231-1。
static int MIN_VALUE 一個保持 int 可以具有的最小值的常數(shù),-231。
static int SIZE 用于以二進制補碼形式表示 int 值的位數(shù)。
static ClassInteger TYPE 表示基本類型 int 的 Class 實例。

構(gòu)造函數(shù)摘要

構(gòu)造函數(shù) 描述
Integer(int value) 構(gòu)造一個新分配的表示指定 int 值的 Integer 對象。
Integer(String s) 構(gòu)造一個新分配的 Integer 對象,該對象表示由 String 參數(shù)指示的 int 值。

方法總結(jié)

修飾符和類型 方法 描述
static int bitCount(int i) 返回指定 int 值的二進制補碼表示中的一位數(shù)。
byte byteValue() 在縮小原語轉(zhuǎn)換后,將此 Integer 的值作為字節(jié)返回。
static int compare(int x, int y) 以數(shù)值方式比較兩個 int 值。
int compareTo(Integer anotherInteger) 以數(shù)值方式比較兩個 Integer 對象。
static int compareUnsigned(int x, int y) 比較兩個 int 值,以數(shù)值方式將這些值視為無符號。
static Integer decode(String nm) 將字符串解碼為整數(shù)。
static int divideUnsigned(int dividend, int divisor) 返回第一個參數(shù)除以第二個參數(shù)的無符號商,其中每個參數(shù)和結(jié)果都被解釋為無符號值。
double doubleValue() 在擴大原始轉(zhuǎn)換后將此 Integer 的值作為雙精度值返回。
boolean equals(Object obj) 將此對象與指定對象進行比較。
float floatValue() 在擴大原始轉(zhuǎn)換后將此整數(shù)的值作為浮點數(shù)返回。
static Integer getInteger(String nm) 確定具有指定名稱的系統(tǒng)屬性的整數(shù)值。
static Integer getInteger(String nm, int val) 確定具有指定名稱的系統(tǒng)屬性的整數(shù)值。
static Integer getInteger(String nm, Integer val) 返回具有指定名稱的系統(tǒng)屬性的整數(shù)值。
int hashCode() 返回此整數(shù)的哈希碼。
static int hashCode(int value) 返回 int 值的哈希碼; 與 Integer.hashCode() 兼容。
static int highestOneBit(int i) 返回一個 int 值,最多有一個單個位,位于指定 int 值中最高(“最左邊”)一位的位置。
int intValue() 將此 Integer 的值作為 int 返回。
long longValue() 在擴展原始轉(zhuǎn)換后將此 Integer 的值作為 long 返回。
static int lowestOneBit(int i) 返回一個 int 值,最多只有一個一位,位于指定 int 值中最低位(“最右邊”)一位的位置。
static int max(int a, int b) 返回兩個 int 值中的較大者,就像調(diào)用 Math#max(int, int) 一樣。
static int min(int a, int b) 返回兩個 int 值中較小的一個,就像調(diào)用 Math#min(int, int) 一樣。
static int numberOfLeadingZeros(int i) 返回指定 int 值的二進制補碼表示中最高位(“最左邊”)一位之前的零位數(shù)。
static int numberOfTrailingZeros(int i) 返回指定 int 值的二進制補碼表示中最低位(“最右邊”)一位之后的零位數(shù)。
static int parseInt(String s) 將字符串參數(shù)解析為有符號十進制整數(shù)。
static int parseInt(String s, int radix) 將字符串參數(shù)解析為第二個參數(shù)指定的基數(shù)中的有符號整數(shù)。
static int parseUnsignedInt(String s) 將字符串參數(shù)解析為無符號十進制整數(shù)。
static int parseUnsignedInt(String s, int radix) 將字符串參數(shù)解析為第二個參數(shù)指定的基數(shù)中的無符號整數(shù)。
static int remainderUnsigned(int dividend, int divisor) 返回第一個參數(shù)除以第二個參數(shù)得到的無符號余數(shù),其中每個參數(shù)和結(jié)果都被解釋為無符號值。
static int reverse(int i) 返回通過反轉(zhuǎn)指定 int 值的二進制補碼表示中的位順序獲得的值。
static int reverseBytes(int i) 返回通過反轉(zhuǎn)指定 int 值的二進制補碼表示中的字節(jié)順序獲得的值。
static int rotateLeft(int i, int distance) 返回通過將指定 int 值的二進制補碼表示形式向左旋轉(zhuǎn)指定位數(shù)而獲得的值。
static int rotateRight(int i, int distance) 返回通過將指定 int 值的二進制補碼表示向右旋轉(zhuǎn)指定位數(shù)獲得的值。
short shortValue() 在縮小原始轉(zhuǎn)換后將此 Integer 的值作為 short 返回。
static int signum(int i) 返回指定 int 值的符號函數(shù)。
static int sum(int a, int b) 根據(jù) + 運算符將兩個整數(shù)相加。
static String toBinaryString(int i) 將整數(shù)參數(shù)的字符串表示形式返回為以 2 為底的無符號整數(shù)。
static String toHexString(int i) 將整數(shù)參數(shù)的字符串表示形式返回為基數(shù)為 16 的無符號整數(shù)。
static String toOctalString(int i) 將整數(shù)參數(shù)的字符串表示形式返回為以 8 為底的無符號整數(shù)。
String toString() 返回表示此整數(shù)值的字符串對象。
static String toString(int i) 返回表示指定整數(shù)的 String 對象。
static String toString(int i, int radix) 以第二個參數(shù)指定的基數(shù)返回第一個參數(shù)的字符串表示形式。
static long toUnsignedLong(int x) 通過無符號轉(zhuǎn)換將參數(shù)轉(zhuǎn)換為 long。
static String toUnsignedString(int i) 將參數(shù)的字符串表示形式返回為無符號十進制值。
static String toUnsignedString(int i, int radix) 將第一個參數(shù)的字符串表示形式返回為第二個參數(shù)指定的基數(shù)中的無符號整數(shù)值。
static Integer valueOf(int i) 返回一個表示指定 int 值的 Integer 實例。
static Integer valueOf(String s) 返回一個 Integer 對象,該對象包含指定 String 的值。
static Integer valueOf(String s, int radix) 當(dāng)使用第二個參數(shù)給出的基數(shù)進行解析時,返回一個 Integer 對象,該對象包含從指定 String 中提取的值。
從類 java.lang.Object 繼承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait

字段詳細信息

BYTES

public static final int BYTES

用于以二進制補碼形式表示 int 值的字節(jié)數(shù)。

MAX_VALUE

public static final int MAX_VALUE

一個保持 int 可以具有的最大值的常數(shù),231-1。

MIN_VALUE

public static final int MIN_VALUE

一個保持 int 可以具有的最小值的常數(shù),-231。

SIZE

public static final int SIZE

用于以二進制補碼形式表示 int 值的位數(shù)。

TYPE

public static final ClassInteger TYPE

表示基本類型 int 的 Class 實例。

構(gòu)造函數(shù)詳細信息

Integer

public Integer(int value)

構(gòu)造一個新分配的表示指定 int 值的 Integer 對象。

參數(shù):

參數(shù)名稱 參數(shù)描述
value 要由 Integer 對象表示的值。

Integer

public Integer(String s) throws NumberFormatException

構(gòu)造一個新分配的 Integer 對象,該對象表示由 String 參數(shù)指示的 int 值。 字符串轉(zhuǎn)換為 int 值的方式與 parseInt 方法用于基數(shù) 10 的方式完全相同。

參數(shù):

參數(shù)名稱 參數(shù)描述
s 要轉(zhuǎn)換為整數(shù)的字符串。

Throws:

Throw名稱 Throw描述
NumberFormatException 如果字符串不包含可解析的整數(shù)。

方法詳情

toString

public static String toString(int i, int radix)

以第二個參數(shù)指定的基數(shù)返回第一個參數(shù)的字符串表示形式。

如果基數(shù)小于 Character.MIN_RADIX 或大于 Character.MAX_RADIX,則使用基數(shù) 10。

如果第一個參數(shù)為負,則結(jié)果的第一個元素是 ASCII 減號字符“-”(“\u002D”)。如果第一個參數(shù)不是負數(shù),則結(jié)果中不會出現(xiàn)符號字符。

結(jié)果的其余字符表示第一個參數(shù)的大小。如果幅度為零,則由單個零字符'0'('\u0030')表示;否則,幅度表示的第一個字符將不是零字符。以下 ASCII 字符用作數(shù)字:

0123456789abcdefghijklmnopqrstuvwxyz

它們是 '\u0030' 到 '\u0039' 和 '\u0061' 到 '\u007A'。如果 radix 為 N,則這些字符中的前 N 個字符按所示順序用作 radix-N 位。因此,十六進制(基數(shù) 16)的數(shù)字是 0123456789abcdef。如果需要大寫字母,可以對結(jié)果調(diào)用 String.toUpperCase() 方法:

Integer.toString(n, 16).toUpperCase()

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要轉(zhuǎn)換為字符串的整數(shù)。
radix 在字符串表示中使用的基數(shù)。

返回:

以指定基數(shù)表示的參數(shù)的字符串表示形式。

toUnsignedString

public static String toUnsignedString(int i, int radix)

將第一個參數(shù)的字符串表示形式返回為第二個參數(shù)指定的基數(shù)中的無符號整數(shù)值。

如果基數(shù)小于 Character.MIN_RADIX 或大于 Character.MAX_RADIX,則使用基數(shù) 10。

請注意,由于第一個參數(shù)被視為無符號值,因此不會打印前導(dǎo)符號字符。

如果幅度為零,則由單個零字符'0'('\u0030')表示; 否則,幅度表示的第一個字符將不是零字符。

基數(shù)和用作數(shù)字的字符的行為與 toString 相同。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要轉(zhuǎn)換為無符號字符串的整數(shù)。
radix 在字符串表示中使用的基數(shù)。

返回:

指定基數(shù)中參數(shù)的無符號字符串表示形式。

toHexString

public static String toHexString(int i)

將整數(shù)參數(shù)的字符串表示形式返回為基數(shù)為 16 的無符號整數(shù)。

如果參數(shù)為負數(shù),則無符號整數(shù)值是參數(shù)加上 232; 否則,它等于參數(shù)。 此值將轉(zhuǎn)換為十六進制(以 16 為基數(shù))的 ASCII 數(shù)字字符串,沒有額外的前導(dǎo) 0。

可以通過調(diào)用 Integer#parseUnsignedInt(String, int) 從返回的字符串 s 中恢復(fù)參數(shù)的值。

如果無符號幅度為零,則由單個零字符'0'('\u0030')表示; 否則,無符號幅度表示的第一個字符將不是零字符。 以下字符用作十六進制數(shù)字:

0123456789abcdef

這些是字符 '\u0030' 到 '\u0039' 和 '\u0061' 到 '\u0066'。 如果需要大寫字母,可以對結(jié)果調(diào)用 String.toUpperCase() 方法:

Integer.toHexString(n).toUpperCase()

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要轉(zhuǎn)換為字符串的整數(shù)。

返回:

由十六進制參數(shù)表示的無符號整數(shù)值的字符串表示形式(以 16 為基數(shù))。

toOctalString

public static String toOctalString(int i)

將整數(shù)參數(shù)的字符串表示形式返回為以 8 為底的無符號整數(shù)。

如果參數(shù)為負數(shù),則無符號整數(shù)值是參數(shù)加上 232; 否則,它等于參數(shù)。 此值被轉(zhuǎn)換為八進制(以 8 為基數(shù))的 ASCII 數(shù)字字符串,沒有額外的前導(dǎo) 0。

可以通過調(diào)用 Integer#parseUnsignedInt(String, int) 從返回的字符串 s 中恢復(fù)參數(shù)的值。

如果無符號幅度為零,則由單個零字符'0'('\u0030')表示; 否則,無符號幅度表示的第一個字符將不是零字符。 以下字符用作八進制數(shù)字:

01234567

這些是字符 '\u0030' 到 '\u0037'。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要轉(zhuǎn)換為字符串的整數(shù)。

返回:

由八進制(以 8 為基數(shù))的參數(shù)表示的無符號整數(shù)值的字符串表示形式。

toBinaryString

public static String toBinaryString(int i)

將整數(shù)參數(shù)的字符串表示形式返回為以 2 為底的無符號整數(shù)。

如果參數(shù)為負數(shù),則無符號整數(shù)值是參數(shù)加上 232; 否則它等于參數(shù)。 此值被轉(zhuǎn)換為二進制(以 2 為基數(shù))的 ASCII 數(shù)字字符串,沒有額外的前導(dǎo) 0。

可以通過調(diào)用 Integer#parseUnsignedInt(String, int) 從返回的字符串 s 中恢復(fù)參數(shù)的值。

如果無符號幅度為零,則由單個零字符'0'('\u0030')表示; 否則,無符號幅度表示的第一個字符將不是零字符。 字符 '0' ('\u0030') 和 '1' ('\u0031') 用作二進制數(shù)字。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要轉(zhuǎn)換為字符串的整數(shù)。

返回:

由二進制參數(shù)表示的無符號整數(shù)值的字符串表示形式(以 2 為基數(shù))。

toString

public static String toString(int i)

返回表示指定整數(shù)的 String 對象。 參數(shù)被轉(zhuǎn)換為帶符號的十進制表示并作為字符串返回,就像參數(shù)和基數(shù) 10 作為 toString(int,int) 方法的參數(shù)一樣。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要轉(zhuǎn)換的整數(shù)。

返回:

以 10 為基數(shù)的參數(shù)的字符串表示形式。

toUnsignedString

public static String toUnsignedString(int i)

將參數(shù)的字符串表示形式返回為無符號十進制值。 該參數(shù)被轉(zhuǎn)換為無符號十進制表示并以字符串的形式返回,就像參數(shù)和基數(shù) 10 作為 toUnsignedString(int,int) 方法的參數(shù)一樣。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要轉(zhuǎn)換為無符號字符串的整數(shù)。

返回:

參數(shù)的無符號字符串表示。

parseInt

public static int parseInt(String s, int radix) throws NumberFormatException

將字符串參數(shù)解析為第二個參數(shù)指定的基數(shù)中的有符號整數(shù)。 字符串中的字符必須都是指定基數(shù)的數(shù)字(由 Character.digit(char, int) 是否返回非負值決定),除了第一個字符可能是 ASCII 減號 '-' ('\u002D ') 表示負值或 ASCII 加號 '+' ('\u002B') 表示正值。 返回結(jié)果整數(shù)值。

如果發(fā)生以下任何一種情況,則會引發(fā) NumberFormatException 類型的異常:

  • 第一個參數(shù)為空或長度為零的字符串。
  • 基數(shù)小于 Character.MIN_RADIX 或大于 Character.MAX_RADIX。
  • 字符串的任何字符都不是指定基數(shù)的數(shù)字,除非第一個字符可以是減號'-'('\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

參數(shù):

參數(shù)名稱 參數(shù)描述
s 包含要解析的整數(shù)表示的字符串
radix 解析 s 時要使用的基數(shù)。

返回:

由指定基數(shù)中的字符串參數(shù)表示的整數(shù)。

Throws:

Throw名稱 Throw描述
NumberFormatException 如果 String 不包含可解析的 int。

parseInt

public static int parseInt(String s) throws NumberFormatException

將字符串參數(shù)解析為有符號十進制整數(shù)。 字符串中的字符必須都是十進制數(shù)字,除了第一個字符可以是ASCII減號'-'('\u002D')表示負值或ASCII加號'+'('\u002B') 表示正值。 返回結(jié)果整數(shù)值,就像參數(shù)和基數(shù) 10 作為參數(shù)提供給 parseInt(java.lang.String,int) 方法一樣。

參數(shù):

參數(shù)名稱 參數(shù)描述
s 包含要解析的 int 表示形式的 String

返回:

由十進制參數(shù)表示的整數(shù)值。

Throws:

Throw名稱 Throw描述
NumberFormatException 如果字符串不包含可解析的整數(shù)。

parseUnsignedInt

public static int parseUnsignedInt(String s, int radix) throws NumberFormatException

將字符串參數(shù)解析為第二個參數(shù)指定的基數(shù)中的無符號整數(shù)。無符號整數(shù)將通常與負數(shù)關(guān)聯(lián)的值映射到大于 MAX_VALUE 的正數(shù)。字符串中的字符必須都是指定基數(shù)的數(shù)字(由 Character.digit(char, int) 是否返回非負值決定),除了第一個字符可能是 ASCII 加號 '+' ('\u002B ')。返回結(jié)果整數(shù)值。

如果發(fā)生以下任何一種情況,則會引發(fā) NumberFormatException 類型的異常:

  • 第一個參數(shù)為空或長度為零的字符串。
  • 基數(shù)小于 Character.MIN_RADIX 或大于 Character.MAX_RADIX。
  • 字符串的任何字符都不是指定基數(shù)的數(shù)字,除非第一個字符可以是加號“+”(“\u002B”),前提是該字符串的長度大于 1。
  • 字符串表示的值大于最大的無符號整數(shù),232-1。

參數(shù):

參數(shù)名稱 參數(shù)描述
s 包含要解析的無符號整數(shù)表示的字符串
radix 解析 s 時要使用的基數(shù)。

返回:

由指定基數(shù)中的字符串參數(shù)表示的整數(shù)。

Throws:

Throw名稱 Throw描述
NumberFormatException 如果 String 不包含可解析的 int。

parseUnsignedInt

public static int parseUnsignedInt(String s) throws NumberFormatException

將字符串參數(shù)解析為無符號十進制整數(shù)。 字符串中的字符都必須是十進制數(shù)字,除了第一個字符可能是 ASCII 加號“+”(“\u002B”)。 返回結(jié)果整數(shù)值,就好像參數(shù)和基數(shù) 10 作為參數(shù)提供給 parseUnsignedInt(java.lang.String,int) 方法一樣。

參數(shù):

參數(shù)名稱 參數(shù)描述
s 一個包含要解析的無符號整數(shù)表示的字符串

返回:

由十進制參數(shù)表示的無符號整數(shù)值。

Throws:

Throw名稱 Throw描述
NumberFormatException 如果字符串不包含可解析的無符號整數(shù)。

valueOf

public static Integer valueOf(String s, int radix) throws NumberFormatException

當(dāng)使用第二個參數(shù)給出的基數(shù)進行解析時,返回一個 Integer 對象,該對象包含從指定 String 中提取的值。 第一個參數(shù)被解釋為表示由第二個參數(shù)指定的基數(shù)中的有符號整數(shù),就像將參數(shù)提供給 parseInt(java.lang.String,int) 方法一樣。 結(jié)果是一個表示字符串指定的整數(shù)值的 Integer 對象。

換句話說,此方法返回一個等于以下值的 Integer 對象:

new Integer(Integer.parseInt(s, radix))

參數(shù):

參數(shù)名稱 參數(shù)描述
s 要解析的字符串。
radix 用于解釋 s 的基數(shù)

返回:

一個 Integer 對象,保存由指定基數(shù)中的字符串參數(shù)表示的值。

Throws:

Throw名稱 Throw描述
NumberFormatException 如果 String 不包含可解析的 int。

valueOf

public static Integer valueOf(String s) throws NumberFormatException

返回一個 Integer 對象,該對象包含指定 String 的值。 該參數(shù)被解釋為表示一個帶符號的十進制整數(shù),就像將該參數(shù)提供給 parseInt(java.lang.String) 方法一樣。 結(jié)果是一個表示字符串指定的整數(shù)值的 Integer 對象。

換句話說,此方法返回一個等于以下值的 Integer 對象:

new Integer(Integer.parseInt(s))

參數(shù):

參數(shù)名稱 參數(shù)描述
s 要解析的字符串。

返回:

一個 Integer 對象,保存由字符串參數(shù)表示的值。

Throws:

Throw名稱 Throw描述
NumberFormatException 如果字符串不能被解析為整數(shù)。

valueOf

public static Integer valueOf(int i)

返回一個表示指定 int 值的 Integer 實例。 如果不需要新的 Integer 實例,則通常應(yīng)優(yōu)先使用此方法而不是構(gòu)造函數(shù) Integer(int),因為此方法可能會通過緩存頻繁請求的值來顯著提高空間和時間性能。 此方法將始終緩存 -128 到 127(含)范圍內(nèi)的值,并且可能緩存此范圍之外的其他值。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 一個 int 值。

返回:

表示 i 的 Integer 實例。

byteValue

public byte byteValue()

在縮小原語轉(zhuǎn)換后,將此 Integer 的值作為字節(jié)返回。

覆蓋:

類 Number 中的 byteValue

返回:

此對象在轉(zhuǎn)換為字節(jié)類型后表示的數(shù)值。

shortValue

public short shortValue()

在縮小原始轉(zhuǎn)換后將此 Integer 的值作為 short 返回。

覆蓋:

類 Number 中的 shortValue

返回:

此對象在轉(zhuǎn)換為 short 類型后表示的數(shù)值。

intValue

public int intValue()

將此 Integer 的值作為 int 返回。

指定者:

類 Number 中的 intValue

返回:

此對象在轉(zhuǎn)換為 int 類型后表示的數(shù)值。

longValue

public long longValue()

在擴展原始轉(zhuǎn)換后將此 Integer 的值作為 long 返回。

指定者:

類 Number 中的 longValue

返回:

此對象在轉(zhuǎn)換為 long 類型后表示的數(shù)值。

floatValue

public float floatValue()

在擴大原始轉(zhuǎn)換后將此整數(shù)的值作為浮點數(shù)返回。

指定者:

類 Number 中的 floatValue

返回:

此對象在轉(zhuǎn)換為 float 類型后表示的數(shù)值。

doubleValue

public double doubleValue()

在擴大原始轉(zhuǎn)換后將此 Integer 的值作為雙精度值返回。

指定者:

類 Number 中的 doubleValue

返回:

此對象在轉(zhuǎn)換為 double 類型后表示的數(shù)值。

toString

public String toString()

返回表示此整數(shù)值的字符串對象。 該值被轉(zhuǎn)換為帶符號的十進制表示形式并以字符串形式返回,就像將整數(shù)值作為參數(shù)提供給 toString(int) 方法一樣。

覆蓋:

類 Object 中的 toString

返回:

以 10 為基數(shù)的此對象值的字符串表示形式。

hashCode

public int hashCode()

返回此整數(shù)的哈希碼。

覆蓋:

類 Object 中的 hashCode

返回:

此對象的哈希碼值,等于此 Integer 對象表示的原始 int 值。

hashCode

public static int hashCode(int value)

返回 int 值的哈希碼; 與 Integer.hashCode() 兼容。

參數(shù):

參數(shù)名稱 參數(shù)描述
value 哈希值

返回:

int 值的哈希碼值。

equals

public boolean equals(Object obj)

將此對象與指定對象進行比較。 當(dāng)且僅當(dāng)參數(shù)不為 null 并且是包含與此對象相同的 int 值的 Integer 對象時,結(jié)果才為真。

覆蓋:

類 Object 中的等于

參數(shù):

參數(shù)名稱 參數(shù)描述
obj 比較的對象。

返回:

如果對象相同,則為 true; 否則為假。

getInteger

public static Integer getInteger(String nm)

確定具有指定名稱的系統(tǒng)屬性的整數(shù)值。

第一個參數(shù)被視為系統(tǒng)屬性的名稱。 系統(tǒng)屬性可通過 System.getProperty(java.lang.String) 方法訪問。 然后使用 Integer#decode 支持的語法將此屬性的字符串值解釋為整數(shù)值,并返回表示該值的 Integer 對象。

如果沒有具有指定名稱的屬性,如果指定的名稱為空或 null,或者如果屬性沒有正確的數(shù)字格式,則返回 null。

換句話說,此方法返回一個等于以下值的 Integer 對象:

getInteger(nm, null)

參數(shù):

參數(shù)名稱 參數(shù)描述
nm 屬性名稱

返回:

屬性的整數(shù)值。

Throws:

Throw名稱 Throw描述
SecurityException 出于與 System#getProperty(String) 相同的原因

getInteger

public static Integer getInteger(String nm, int val)

確定具有指定名稱的系統(tǒng)屬性的整數(shù)值。

第一個參數(shù)被視為系統(tǒng)屬性的名稱。 系統(tǒng)屬性可通過 System.getProperty(java.lang.String) 方法訪問。 然后使用 Integer#decode 支持的語法將此屬性的字符串值解釋為整數(shù)值,并返回表示該值的 Integer 對象。

第二個參數(shù)是默認值。 如果沒有指定名稱的屬性,如果屬性沒有正確的數(shù)字格式,或者指定的名稱為空或 null,則返回表示第二個參數(shù)的值的 Integer 對象。

換句話說,此方法返回一個等于以下值的 Integer 對象:

getInteger(nm, new Integer(val))

但在實踐中,它可以通過以下方式實施:

 Integer result = getInteger(nm, null);
 return (result == null) ? new Integer(val) : result;

以避免在不需要默認值時對 Integer 對象進行不必要的分配。

參數(shù):

參數(shù)名稱 參數(shù)描述
nm 屬性名稱
val 默認值

返回:

屬性的整數(shù)值。

Throws:

Throw名稱 Throw描述
SecurityException 出于與 System#getProperty(String) 相同的原因

getInteger

public static Integer getInteger(String nm, Integer val)

返回具有指定名稱的系統(tǒng)屬性的整數(shù)值。第一個參數(shù)被視為系統(tǒng)屬性的名稱。系統(tǒng)屬性可通過 System.getProperty(java.lang.String) 方法訪問。然后根據(jù) Integer#decode 方法將此屬性的字符串值解釋為整數(shù)值,并返回表示該值的 Integer 對象;總之:

  • 如果屬性值以兩個 ASCII 字符 0x 或 ASCII 字符 # 開頭,后面沒有減號,則其余部分將被解析為十六進制整數(shù),與方法 valueOf(java.lang.String,int ) 基數(shù)為 16。
  • 如果屬性值以 ASCII 字符 0 后跟另一個字符開頭,則它被解析為八進制整數(shù),與基數(shù)為 8 的 valueOf(java.lang.String,int) 方法完全相同。
  • 否則,屬性值將被解析為十進制整數(shù),與基數(shù)為 10 的 valueOf(java.lang.String,int) 方法完全相同。

第二個參數(shù)是默認值。如果沒有指定名稱的屬性,如果屬性沒有正確的數(shù)字格式,或者指定的名稱為空或 null,則返回默認值。

參數(shù):

參數(shù)名稱 參數(shù)描述
nm 屬性名稱
val 默認值

返回:

屬性的整數(shù)值。

Throws:

Throw名稱 Throw描述
SecurityException 出于與 System#getProperty(String) 相同的原因

decode

public static Integer decode(String nm) throws NumberFormatException

將字符串解碼為整數(shù)。 接受以下語法給出的十進制、十六進制和八進制數(shù):

可解碼字符串:

Signopt 十進制數(shù)字

Signopt 0x HexDigits

Signopt 0X HexDigits

Signopt #HexDigits

Signopt 0 八進制數(shù)字

符號:

+

DecimalNumeral、HexDigits 和 OctalDigits 的定義見《Java? 語言規(guī)范》第 3.10.1 節(jié),但數(shù)字之間不接受下劃線。

跟隨可選符號和/或基數(shù)說明符(“0x”、“0X”、“#”或前導(dǎo)零)的字符序列由 Integer.parseInt 方法解析,并使用指示的基數(shù)(10、16 或 8 )。 此字符序列必須表示正值,否則將引發(fā) NumberFormatException。 如果指定字符串的第一個字符是減號,則結(jié)果為否定。 字符串中不允許有空格字符。

參數(shù):

參數(shù)名稱 參數(shù)描述
nm 要解碼的字符串。

返回:

一個 Integer 對象,保存由 nm 表示的 int 值

Throws:

Throw名稱 Throw描述
NumberFormatException 如果字符串不包含可解析的整數(shù)。

compareTo

public int compareTo(Integer anotherInteger)

以數(shù)值方式比較兩個 Integer 對象。

指定者:

接口 ComparableInteger 中的 compareTo

參數(shù):

參數(shù)名稱 參數(shù)描述
anotherInteger 要比較的整數(shù)。

返回:

如果此 Integer 等于參數(shù) Integer,則值為 0; 如果此 Integer 在數(shù)值上小于參數(shù) Integer,則值小于 0; 如果此 Integer 在數(shù)值上大于參數(shù) Integer(有符號比較),則值大于 0。

compare

public static int compare(int x, int y)

以數(shù)值方式比較兩個 int 值。 返回的值與通過以下方式返回的值相同:

    Integer.valueOf(x).compareTo(Integer.valueOf(y)) 

參數(shù):

參數(shù)名稱 參數(shù)描述
x 第一個要比較的int
y 第二個要比較的int

返回:

如果 x == y,則值為 0; 如果 x < y,則值小于 0; 如果 x > y,則值大于 0

compareUnsigned

public static int compareUnsigned(int x, int y)

比較兩個 int 值,以數(shù)值方式將這些值視為無符號。

參數(shù):

參數(shù)名稱 參數(shù)描述
x 第一個要比較的int
y 第二個要比較的int

返回:

如果 x == y,則值為 0; 如果 x < y 作為無符號值,則值小于 0; 如果 x > y 作為無符號值,則值大于 0

toUnsignedLong

public static long toUnsignedLong(int x)

通過無符號轉(zhuǎn)換將參數(shù)轉(zhuǎn)換為 long。 在到 long 的無符號轉(zhuǎn)換中,long 的高 32 位為零,低 32 位等于整數(shù)參數(shù)的位。 因此,零和正 int 值映射到數(shù)值相等的 long 值,負 int 值映射到等于輸入加 232 的 long 值。

參數(shù):

參數(shù)名稱 參數(shù)描述
x 要轉(zhuǎn)換為無符號長整數(shù)的值

返回:

通過無符號轉(zhuǎn)換轉(zhuǎn)換為 long 的參數(shù)

divideUnsigned

public static int divideUnsigned(int dividend, int divisor)

返回第一個參數(shù)除以第二個參數(shù)的無符號商,其中每個參數(shù)和結(jié)果都被解釋為無符號值。

請注意,在二進制補碼算術(shù)中,如果兩個操作數(shù)都被視為有符號或無符號,則加法、減法和乘法這三個其他基本算術(shù)運算按位相同。 因此不提供單獨的 addUnsigned 等方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
dividend 要分割的值
divisor 做除法的價值

返回:

第一個參數(shù)的無符號商除以第二個參數(shù)

remainderUnsigned

public static int remainderUnsigned(int dividend, int divisor)

返回第一個參數(shù)除以第二個參數(shù)得到的無符號余數(shù),其中每個參數(shù)和結(jié)果都被解釋為無符號值。

參數(shù):

參數(shù)名稱 參數(shù)描述
dividend 要分割的值
divisor 做除法的價值

返回:

第一個參數(shù)的無符號余數(shù)除以第二個參數(shù)

highestOneBit

public static int highestOneBit(int i)

返回一個 int 值,最多有一個單個位,位于指定 int 值中最高(“最左邊”)一位的位置。 如果指定的值在其二進制補碼表示中沒有一位,即等于零,則返回零。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要計算其最高一位的值

返回:

具有單個一位的 int 值,位于指定值中最高位的位置,如果指定值本身等于 0,則為 0。

lowestOneBit

public static int lowestOneBit(int i)

返回一個 int 值,最多只有一個一位,位于指定 int 值中最低位(“最右邊”)一位的位置。 如果指定的值在其二進制補碼表示中沒有一位,即等于零,則返回零。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要計算其最低一位的值

返回:

具有單個一位的 int 值,位于指定值中最低位的位置,如果指定值本身等于 0,則為 0。

numberOfLeadingZeros

public static int numberOfLeadingZeros(int i)

返回指定 int 值的二進制補碼表示中最高位(“最左邊”)一位之前的零位數(shù)。 如果指定的值在其二進制補碼表示中沒有一位,則返回 32,換句話說,如果它等于 0。

請注意,此方法與以 2 為底的對數(shù)密切相關(guān)。對于所有正 int 值 x:

  • 樓層(log2(x)) = 31 - numberOfLeadingZeros(x)
  • ceil(log2(x)) = 32 - numberOfLeadingZeros(x - 1)

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要計算前導(dǎo)零個數(shù)的值

返回:

指定 int 值的二進制補碼表示中最高位(“最左邊”)一位之前的零位數(shù),如果該值等于 0,則為 32。

numberOfTrailingZeros

public static int numberOfTrailingZeros(int i)

返回指定 int 值的二進制補碼表示中最低位(“最右邊”)一位之后的零位數(shù)。 如果指定的值在其二進制補碼表示中沒有一位,則返回 32,換句話說,如果它等于 0。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要計算尾隨零個數(shù)的值

返回:

指定 int 值的二進制補碼表示中最低位(“最右邊”)一位之后的零位數(shù),如果該值等于 0,則為 32。

bitCount

public static int bitCount(int i)

返回指定 int 值的二進制補碼表示中的一位數(shù)。 這個函數(shù)有時被稱為人口計數(shù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要計算其位的值

返回:

指定 int 值的二進制補碼表示中的一位數(shù)。

rotateLeft

public static int rotateLeft(int i, int distance)

返回通過將指定 int 值的二進制補碼表示形式向左旋轉(zhuǎn)指定位數(shù)而獲得的值。 (位移出左側(cè),或高位,右側(cè)重新進入,或低位。)

請注意,負距離的左旋轉(zhuǎn)等效于右旋轉(zhuǎn):rotateLeft(val, -distance) == rotateRight(val, distance)。 另請注意,旋轉(zhuǎn) 32 的任意倍數(shù)是無操作的,因此可以忽略旋轉(zhuǎn)距離的最后五位以外的所有位,即使距離為負:rotateLeft(val, distance) == rotateLeft(val, distance & 0x1F)。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 其位要左移的值
distance 向左旋轉(zhuǎn)的位數(shù)

返回:

通過將指定 int 值的二進制補碼表示形式向左旋轉(zhuǎn)指定位數(shù)獲得的值。

rotateRight

public static int rotateRight(int i, int distance)

返回通過將指定 int 值的二進制補碼表示向右旋轉(zhuǎn)指定位數(shù)獲得的值。 (位移出右手,或低位,左側(cè)重新進入,或高位。)

請注意,負距離的右旋轉(zhuǎn)相當(dāng)于左旋轉(zhuǎn):rotateRight(val, -distance) == rotateLeft(val, distance)。 另請注意,旋轉(zhuǎn) 32 的任何倍數(shù)都是無操作的,因此可以忽略旋轉(zhuǎn)距離的最后五位以外的所有位,即使距離為負:rotateRight(val, distance) == rotateRight(val, distance & 0x1F)。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 其位要右移的值
distance 向右旋轉(zhuǎn)的位數(shù)

返回:

通過將指定的 int 值的二進制補碼表示向右旋轉(zhuǎn)指定的位數(shù)獲得的值。

reverse

public static int reverse(int i)

返回通過反轉(zhuǎn)指定 int 值的二進制補碼表示中的位順序獲得的值。

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要反轉(zhuǎn)的值

返回:

通過反轉(zhuǎn)指定 int 值中位的順序獲得的值。

signum

public static int signum(int i)

返回指定 int 值的符號函數(shù)。 (如果指定值為負,則返回值為 -1;如果指定值為 0,則返回 0;如果指定值為正,則返回 1。)

參數(shù):

參數(shù)名稱 參數(shù)描述
i 要計算其符號的值

返回:

指定 int 值的符號函數(shù)。

reverseBytes

public static int reverseBytes(int i)

返回通過反轉(zhuǎn)指定 int 值的二進制補碼表示中的字節(jié)順序獲得的值。

參數(shù):

Parameter Name Parameter Description
i the value whose bytes are to be reversed

返回:

通過反轉(zhuǎn)指定 int 值中的字節(jié)獲得的值。

sum

public static int sum(int a, int b)

根據(jù) + 運算符將兩個整數(shù)相加。

參數(shù):

參數(shù)名稱 參數(shù)描述
a 第一個操作數(shù)
b 第二個操作數(shù)

返回:

a 和 b 之和

max

public static int max(int a, int b)

返回兩個 int 值中的較大者,就像調(diào)用 Math#max(int, int) 一樣。

參數(shù):

參數(shù)名稱 參數(shù)描述
a 第一個操作數(shù)
b 第二個操作數(shù)

返回:

a 和 b 中的較大者

min

public static int min(int a, int b)

返回兩個 int 值中較小的一個,就像調(diào)用 Math#min(int, int) 一樣。

參數(shù):

參數(shù)名稱 參數(shù)描述
a 第一個操作數(shù)
b 第二個操作數(shù)

返回:

a 和 b 中較小的一個

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號