- java.lang.Object
-
- java.lang.Number
-
- java.lang.Integer
-
- 实现的所有接口
-
Serializable,Comparable<Integer>
public final class Integer extends Number implements Comparable<Integer>
Integer类在对象中包装基本类型int的值。Integer类型的对象包含单个字段,其类型为int。此外,该类提供了几种将
int转换为String和String转换为int,以及处理int时有用的其他常量和方法。实施注释:“bit twiddling”方法(如
highestOneBit和numberOfTrailingZeros)的实现基于Henry S. Warren,Jr。的Hacker's Delight (Addison Wesley,2002)的材料。- 从以下版本开始:
- 1.0
- 另请参见:
- Serialized Form
-
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 static intbitCount(int i)返回指定的int值的二进制补码表示形式中的int。bytebyteValue()返回此值Integer为byte的基本收缩转换后。static intcompare(int x, int y)以数字方式比较两个int值。intcompareTo(Integer anotherInteger)以数字方式比较两个Integer对象。static intcompareUnsigned(int x, int y)比较两个int值,将数值视为无符号。static Integerdecode(String nm)将String解码为Integer。static intdivideUnsigned(int dividend, int divisor)返回将第一个参数除以第二个参数的无符号商,其中每个参数和结果都被解释为无符号值。doubledoubleValue()返回此值Integer为double一个宽元转换后。booleanequals(Object obj)将此对象与指定的对象进行比较。floatfloatValue()返回此值Integer为float一个宽元转换后。static IntegergetInteger(String nm)确定具有指定名称的系统属性的整数值。static IntegergetInteger(String nm, int val)确定具有指定名称的系统属性的整数值。static IntegergetInteger(String nm, Integer val)返回具有指定名称的系统属性的整数值。inthashCode()返回此Integer的哈希码。static inthashCode(int value)返回int值的哈希码; 与Integer.hashCode()兼容。static inthighestOneBit(int i)返回int值,最多只有一位,位于指定int值中最高位(“最左侧”)一位的位置。intintValue()返回此值Integer为int。longlongValue()在扩展基元转换后,将此Integer的值作为long返回。static intlowestOneBit(int i)返回int值,最多只有一位,位于指定int值中最低位(“最右侧”)一位的位置。static intmax(int a, int b)static intmin(int a, int b)static intnumberOfLeadingZeros(int i)返回指定int值的二进制补码二进制表示中最高位(“最左侧”)一位之前的零位数。static intnumberOfTrailingZeros(int i)返回指定int值的二进制补码表达式中最低位(“最右侧”)一位后的零位数。static intparseInt(CharSequence s, int beginIndex, int endIndex, int radix)解析CharSequence参数作为有符号int指定radix,在指定的开始beginIndex并延伸到endIndex - 1。static intparseInt(String s)将字符串参数解析为带符号的十进制整数。static intparseInt(String s, int radix)将字符串参数解析为第二个参数指定的基数中的有符号整数。static intparseUnsignedInt(CharSequence s, int beginIndex, int endIndex, int radix)解析CharSequence参数为一个无符号int在指定的radix,在指定的开始beginIndex并延伸到endIndex - 1。static intparseUnsignedInt(String s)将字符串参数解析为无符号十进制整数。static intparseUnsignedInt(String s, int radix)将字符串参数解析为第二个参数指定的基数中的无符号整数。static intremainderUnsigned(int dividend, int divisor)返回将第一个参数除以第二个参数的无符号余数,其中每个参数和结果都被解释为无符号值。static intreverse(int i)返回通过反转指定的int值的二进制补码二进制表示中的位顺序获得的值。static intreverseBytes(int i)返回通过反转指定的int值的二进制补码表示中的字节顺序获得的值。static introtateLeft(int i, int distance)返回通过旋转指定int留下的指定int值的二进制补码表达式获得的值。static introtateRight(int i, int distance)返回通过将指定的int值的二进制补码表达式旋转指定的int值。shortshortValue()返回此值Integer为short的基本收缩转换后。static intsignum(int i)返回指定的int值的signum函数。static intsum(int a, int b)根据+运算符将两个整数相加。static StringtoBinaryString(int i)返回整数参数的字符串表示形式,作为base 2中的无符号整数。static StringtoHexString(int i)返回整数参数的字符串表示形式,作为基数为16的无符号整数。static StringtoOctalString(int i)返回整数参数的字符串表示形式,作为基数为8的无符号整数。StringtoString()返回表示此Integer值的String对象。static StringtoString(int i)返回表示指定整数的String对象。static StringtoString(int i, int radix)返回第二个参数指定的基数中第一个参数的字符串表示形式。static longtoUnsignedLong(int x)通过无符号转换将参数转换为long。static StringtoUnsignedString(int i)以无符号十进制值的形式返回参数的字符串表示形式。static StringtoUnsignedString(int i, int radix)返回第一个参数的字符串表示形式,作为第二个参数指定的基数中的无符号整数值。static IntegervalueOf(int i)返回表示指定的int值的Integer实例。static IntegervalueOf(String s)返回一个Integer物体保持在指定的值String。static IntegervalueOf(String s, int radix)返回Integer对象,当使用第二个参数给出的基数进行解析时,该对象保存从指定的String提取的值。
-
-
-
字段详细信息
-
BYTES
public static final int BYTES
用于表示二进制补码二进制形式的int值的字节数。- 从以下版本开始:
- 1.8
- 另请参见:
- 常数字段值
-
-
构造方法详细信息
-
Integer
@Deprecated(since="9") public Integer(int value)
Deprecated.It is rarely appropriate to use this constructor. The static factoryvalueOf(int)is generally a better choice, as it is likely to yield significantly better space and time performance.构造一个新分配的Integer对象,该对象表示指定的int值。- 参数
-
value-Integer对象表示的值。
-
Integer
@Deprecated(since="9") public Integer(String s) throws NumberFormatException
Deprecated.It is rarely appropriate to use this constructor. UseparseInt(String)to convert a string to aintprimitive, or usevalueOf(String)to convert a string to anIntegerobject.构造一个新分配Integer对象,表示int由指示值String参数。 字符串parseInt方法用于基数10的方式转换为int值。- 参数
-
s-String将转换为Integer。 - 异常
-
NumberFormatException- 如果String不包含可解析的整数。
-
-
方法详细信息
-
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'。 如果radix为N ,则这些字符的前N个按所示顺序用作基数-N数字。 因此,十六进制(基数16)的数字是0123456789abcdef。 如果需要大写字母,可以在结果上调用String.toUpperCase()方法:Integer.toString(n, 16).toUpperCase()- 参数
-
i- 要转换为字符串的整数。 -
radix- 字符串表示中使用的基数。 - 结果
- 指定基数中参数的字符串表示形式。
- 另请参见:
-
Character.MAX_RADIX,Character.MIN_RADIX
-
toUnsignedString
public static String toUnsignedString(int i, int radix)
返回第一个参数的字符串表示形式,作为第二个参数指定的基数中的无符号整数值。如果基数小于
Character.MIN_RADIX或大于Character.MAX_RADIX,则使用基数10。请注意,由于第一个参数被视为无符号值,因此不会打印前导符号字符。
如果幅度为零,则由单个零字符
'0'('\u0030')表示; 否则,幅度表示的第一个字符将不是零字符。基数的行为和用作数字的字符与
toString相同。- 参数
-
i- 要转换为无符号字符串的整数。 -
radix- 字符串表示中使用的基数。 - 结果
- 指定基数中参数的无符号字符串表示形式。
- 从以下版本开始:
- 1.8
- 另请参见:
-
toString(int, int)
-
toHexString
public static String toHexString(int i)
返回整数参数的字符串表示形式,作为基数为16的无符号整数。如果参数为负,则无符号整数值是参数加2 32 ; 否则,它等于参数。 此值将转换为十六进制(基数为16)的ASCII数字字符串,没有额外的前导
0。可以通过调用
Integer.parseUnsignedInt(s, 16)从返回的字符串s恢复参数的值。如果无符号幅度为零,则由单个零字符
'0'('\u0030')表示; 否则,无符号幅度表示的第一个字符将不是零字符。 以下字符用作十六进制数字:
这些是字符0123456789abcdef'\u0030'到'\u0039'和'\u0061'到'\u0066'。 如果需要大写字母,可以在结果上调用String.toUpperCase()方法:Integer.toHexString(n).toUpperCase()- 参数
-
i- 要转换为字符串的整数。 - 结果
- 由十六进制(基数为16)的参数表示的无符号整数值的字符串表示形式。
- 从以下版本开始:
- 1.0.2
- 另请参见:
-
parseUnsignedInt(String, int),toUnsignedString(int, int)
-
toOctalString
public static String toOctalString(int i)
返回整数参数的字符串表示形式,作为基数为8的无符号整数。如果参数为负,则无符号整数值是参数加2 32 ; 否则,它等于参数。 此值将转换为八进制(基数为8)的ASCII数字字符串,没有额外的前导
0。可以通过调用
Integer.parseUnsignedInt(s, 8)从返回的字符串s恢复参数的值。如果无符号幅度为零,则由单个零字符
'0'('\u0030')表示; 否则,无符号幅度表示的第一个字符将不是零字符。 以下字符用作八进制数字:
这些是字符01234567'\u0030'到'\u0037'。- 参数
-
i- 要转换为字符串的整数。 - 结果
- 由八进制(基数为8)中的参数表示的无符号整数值的字符串表示形式。
- 从以下版本开始:
- 1.0.2
- 另请参见:
-
parseUnsignedInt(String, int),toUnsignedString(int, int)
-
toBinaryString
public static String toBinaryString(int i)
返回整数参数的字符串表示形式,作为base 2中的无符号整数。如果参数为负,则无符号整数值是参数加2 32 ; 否则它等于参数。 此值将转换为二进制(基数2)中的ASCII数字字符串,没有额外的前导
0。可以通过调用
Integer.parseUnsignedInt(s, 2)从返回的字符串s恢复参数的值。如果无符号幅度为零,则由单个零字符
'0'('\u0030')表示; 否则,无符号幅度表示的第一个字符将不是零字符。 字符'0'('\u0030')和'1'('\u0031')用作二进制数字。- 参数
-
i- 要转换为字符串的整数。 - 结果
- 由二进制(基数2)中的参数表示的无符号整数值的字符串表示形式。
- 从以下版本开始:
- 1.0.2
- 另请参见:
-
parseUnsignedInt(String, int),toUnsignedString(int, int)
-
toString
public static String toString(int i)
返回表示指定整数的String对象。 参数转换为带符号的十进制表示形式并作为字符串返回,就像参数和基数10作为toString(int, int)方法的参数一样 。- 参数
-
i- 要转换的整数。 - 结果
- 基数为10的参数的字符串表示。
-
toUnsignedString
public static String toUnsignedString(int i)
以无符号十进制值的形式返回参数的字符串表示形式。 参数转换为无符号十进制表示形式,并作为字符串返回,就像参数和基数10作为toUnsignedString(int, int)方法的参数一样 。- 参数
-
i- 要转换为无符号字符串的整数。 - 结果
- 参数的无符号字符串表示形式。
- 从以下版本开始:
- 1.8
- 另请参见:
-
toUnsignedString(int, int)
-
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- 包含要解析的整数表示的String -
radix- 解析s使用的基数。 - 结果
- 指定基数中字符串参数表示的整数。
- 异常
-
NumberFormatException- 如果String不包含可解析的int。
- 第一个参数是
-
parseInt
public static int parseInt(CharSequence s, int beginIndex, int endIndex, int radix) throws NumberFormatException
解析CharSequence参数作为有符号int指定radix,在指定的开始beginIndex并延伸到endIndex - 1。该方法不会采取措施来防止
CharSequence在解析时发生变异。- 参数
-
s-所述CharSequence含有int表示被解析 -
beginIndex- 起始索引,包括。 -
endIndex- 结束索引,不包括。 -
radix- 解析s使用的基数。 - 结果
-
签名的
int由指定基数中的子int表示。 - 异常
-
NullPointerException- 如果s为空。 -
IndexOutOfBoundsException- 如果beginIndex为负数,或者beginIndex大于endIndex或者endIndex大于s.length()。 -
NumberFormatException- 如果int在指定的CharSequence中不包含可解析的radix,或者radix小于Character.MIN_RADIX或大于Character.MAX_RADIX。 - 从以下版本开始:
- 9
-
parseInt
public static int parseInt(String s) throws NumberFormatException
将字符串参数解析为带符号的十进制整数。 字符串中的字符必须全部为十进制数字,除了第一个字符可以是ASCII减号'-'('\u002D')以指示负值或ASCII加号'+'('\u002B')以指示正值。 返回结果整数值,就像参数和基数10作为parseInt(java.lang.String, int)方法的参数一样 。- 参数
-
s-一个String含有int表示被解析 - 结果
- 十进制参数表示的整数值。
- 异常
-
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。 - 字符串表示的值大于最大的无符号
int32 -1。
- 参数
-
s- 包含要解析的无符号整数表示的String -
radix- 解析s使用的基数。 - 结果
- 指定基数中字符串参数表示的整数。
- 异常
-
NumberFormatException- 如果String不包含可分析的int。 - 从以下版本开始:
- 1.8
- 第一个参数是
-
parseUnsignedInt
public static int parseUnsignedInt(CharSequence s, int beginIndex, int endIndex, int radix) throws NumberFormatException
解析CharSequence参数为一个无符号int在指定的radix,在指定的开始beginIndex并延伸到endIndex - 1。该方法不会采取措施来防止
CharSequence在解析时发生变异。- 参数
-
s-所述CharSequence含有无符号int表示被解析 -
beginIndex- 起始索引,包括。 -
endIndex- 结束索引,不包括。 -
radix- 解析s要使用的基数。 - 结果
-
无符号的
int由指定基数中的子int表示。 - 异常
-
NullPointerException- 如果s为空。 -
IndexOutOfBoundsException- 如果beginIndex为负数,或者beginIndex大于endIndex或endIndex大于s.length()。 -
NumberFormatException- 如果int在指定的CharSequence中不包含可解析的无符号radix,或者radix小于Character.MIN_RADIX或大于Character.MAX_RADIX。 - 从以下版本开始:
- 9
-
parseUnsignedInt
public static int parseUnsignedInt(String s) throws NumberFormatException
将字符串参数解析为无符号十进制整数。 字符串中的字符必须全部为十进制数字,但第一个字符可以是ASCII加号'+'('\u002B')。 返回结果整数值,就像参数和基数10作为parseUnsignedInt(java.lang.String, int)方法的参数一样 。- 参数
-
s-一个String含有无符号int表示被解析 - 结果
- 十进制参数表示的无符号整数值。
- 异常
-
NumberFormatException- 如果字符串不包含可解析的无符号整数。 - 从以下版本开始:
- 1.8
-
valueOf
public static Integer valueOf(String s, int radix) throws NumberFormatException
当使用第二个参数给出的基数进行解析时,返回一个Integer对象,其中String从指定的String提取的值。 第一个参数被解释为表示由第二个参数指定的基数中的有符号整数,就像将参数赋予parseInt(java.lang.String, int)方法一样。 结果是Integer对象,表示字符串指定的整数值。换句话说,此方法返回一个等于值的
Integer对象:new Integer(Integer.parseInt(s, radix))- 参数
-
s- 要解析的字符串。 -
radix- 用于解释s的基数 - 结果
-
Integer对象,保存指定基数中字符串参数表示的值。 - 异常
-
NumberFormatException- 如果String不包含可解析的int。
-
valueOf
public static Integer valueOf(String s) throws NumberFormatException
返回一个Integer物体保持在指定的值String。 该参数被解释为表示带符号的十进制整数,就像该参数被赋予parseInt(java.lang.String)方法一样。 结果是Integer对象,表示字符串指定的整数值。换句话说,此方法返回一个等于值的
Integer对象:new Integer(Integer.parseInt(s))- 参数
-
s- 要解析的字符串。 - 结果
-
Integer对象,保存字符串参数表示的值。 - 异常
-
NumberFormatException- 如果字符串无法解析为整数。
-
valueOf
public static Integer valueOf(int i)
返回表示指定的int值的Integer实例。 如果不需要新的Integer实例,则通常应优先使用此方法,而不是构造函数Integer(int),因为此方法可能通过缓存频繁请求的值来显着提高空间和时间性能。 此方法将始终缓存-128到127(包括端点)范围内的值,并可以缓存此范围之外的其他值。- 参数
-
i- 一个int值。 - 结果
-
Integer实例,代表i。 - 从以下版本开始:
- 1.5
-
byteValue
public byte byteValue()
返回此值Integer为byte的基本收缩转换后。
-
shortValue
public short shortValue()
返回此值Integer为short的基本收缩转换后。- 重写:
-
shortValue在Number类 - 结果
-
转换为类型
short后此对象表示的数值。 - See The Java™ Language Specification:
- 5.1.3缩小原始转换
-
intValue
public int intValue()
返回此值Integer为int。
-
longValue
public long longValue()
返回此值Integer为long一个宽元转换后。- Specified by:
-
longValue,类Number - 结果
-
转换为类型
long后此对象表示的数值。 - 另请参见:
-
toUnsignedLong(int) - See The Java™ Language Specification:
- 5.1.2拓宽原始转换
-
floatValue
public float floatValue()
返回此值Integer为float一个宽元转换后。- Specified by:
-
floatValue在Number类 - 结果
-
转换为类型
float后此对象表示的数值。 - See The Java™ Language Specification:
- 5.1.2拓宽原始转换
-
doubleValue
public double doubleValue()
返回此值Integer为double一个宽元转换后。- Specified by:
-
doubleValue在类Number - 结果
-
转换为类型
double后此对象表示的数值。 - See The Java™ Language Specification:
- 5.1.2拓宽原始转换
-
toString
public String toString()
返回表示此Integer值的String对象。 该值将转换为带符号的十进制表示形式并作为字符串返回,就像将整数值作为toString(int)方法的参数给出一样。
-
hashCode
public int hashCode()
返回此Integer的哈希码。- 重写:
-
hashCode类Object - 结果
-
此对象的哈希码值,等于原始
int由该表示值Integer对象。 - 另请参见:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
hashCode
public static int hashCode(int value)
返回int值的哈希码; 与Integer.hashCode()兼容。- 参数
-
value- 哈希值 - 结果
-
int值的哈希码值。 - 从以下版本开始:
- 1.8
-
equals
public boolean equals(Object obj)
将此对象与指定的对象进行比较。 当且仅当参数不是null并且是包含与此对象相同的int值的Integer对象时,结果为true。- 重写:
-
equals在Object类 - 参数
-
obj- 要与之比较的对象。 - 结果
-
true如果对象相同;false否则。 - 另请参见:
-
Object.hashCode(),HashMap
-
getInteger
public static Integer getInteger(String nm)
确定具有指定名称的系统属性的整数值。第一个参数被视为系统属性的名称。 可以通过
System.getProperty(java.lang.String)方法访问系统属性。 然后,使用decode支持的语法将此属性的字符串值解释为整数值,并返回表示此值的Integer对象。如果没有具有指定名称的属性,如果指定的名称为空或
null,或者属性没有正确的数字格式,则返回null。换句话说,此方法返回一个等于值的
Integer对象:getInteger(nm, null)- 参数
-
nm- 属性名称。 - 结果
-
Integer该物业的价值。 - 异常
-
SecurityException- 原因与System.getProperty相同 - 另请参见:
-
System.getProperty(java.lang.String),System.getProperty(java.lang.String, java.lang.String)
-
getInteger
public static Integer getInteger(String nm, int val)
确定具有指定名称的系统属性的整数值。第一个参数被视为系统属性的名称。 可以通过
System.getProperty(java.lang.String)方法访问系统属性。 然后,使用decode支持的语法将此属性的字符串值解释为整数值,并返回表示此值的Integer对象。第二个参数是默认值。 如果没有指定名称的属性,如果属性没有正确的数字格式,或者指定的名称为空或
null,则返回表示第二个参数值的Integer对象。换句话说,此方法返回一个等于值的
Integer对象:
但在实践中,它可以通过以下方式实施:getInteger(nm, new Integer(val))
避免在不需要默认值时不必要地分配Integer result = getInteger(nm, null); return (result == null) ? new Integer(val) : result;
Integer对象。- 参数
-
nm- 财产名称。 -
val- 默认值。 - 结果
-
Integer该物业的价值。 - 异常
-
SecurityException- 原因与System.getProperty相同 - 另请参见:
-
System.getProperty(java.lang.String),System.getProperty(java.lang.String, java.lang.String)
-
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,则返回默认值。- 参数
-
nm- 财产名称。 -
val- 默认值。 - 结果
-
Integer该物业的价值。 - 异常
-
SecurityException- 原因与System.getProperty相同 - 另请参见:
-
System.getProperty(java.lang.String),System.getProperty(java.lang.String, java.lang.String)
- 如果属性值以两个ASCII字符
-
decode
public static Integer decode(String nm) throws NumberFormatException
将String解码为Integer。 接受以下语法给出的十进制,十六进制和八进制数:
DecimalNumeral , HexDigits和OctalDigits在The Java™ Language Specification的 3.10.1节中定义 ,但数字之间不接受下划线。- DecodableString:
- Signopt DecimalNumeral
-
Signopt
0xHexDigits -
Signopt
0XHexDigits -
Signopt
#HexDigits -
Signopt
0OctalDigits - Sign:
-
- -
+
可选符号和/或基数说明符(“
0x”,“0X”,“#”或前导零)后面的字符序列由Integer.parseInt方法用指示的基数(10,16或8)进行解析。 此字符序列必须表示正值或将抛出NumberFormatException。 如果指定的String第一个字符是减号,则结果为否定。String中不允许使用空格字符。- 参数
-
nm- 要解码的String。 - 结果
-
Integer对象,持有int值,由nm表示 - 异常
-
NumberFormatException- 如果String不包含可解析的整数。 - 另请参见:
-
parseInt(java.lang.String, int)
-
compareTo
public int compareTo(Integer anotherInteger)
以数字方式比较两个Integer对象。- Specified by:
-
compareTo在界面Comparable<Integer> - 参数
-
anotherInteger- 要比较的Integer。 - 结果
-
值
0如果此Integer是等于参数Integer; 的值小于0,如果这Integer在数值上小于该参数Integer; 如果Integer在数值上大于参数Integer(有符号比较),则值大于0。 - 从以下版本开始:
- 1.2
-
compare
public static int compare(int x, int y)以数字方式比较两个int值。 返回的值与返回的值相同:Integer.valueOf(x).compareTo(Integer.valueOf(y))- 参数
-
x- 第一个int进行比较 -
y- 第二个int进行比较 - 结果
-
值
0如果x == y; 的值小于0如果x < y; 和值大于0如果x > y - 从以下版本开始:
- 1.7
-
compareUnsigned
public static int compareUnsigned(int x, int y)比较两个int值,以数值方式将值视为无符号。- 参数
-
x- 第一个int进行比较 -
y- 第二个int进行比较 - 结果
-
值
0如果x == y; 如果x < y为无符号值,则值小于0; 如果x > y为无符号值,则值大于0 - 从以下版本开始:
- 1.8
-
toUnsignedLong
public static long toUnsignedLong(int x)
通过无符号转换将参数转换为long。 在一个无符号转换为long,所述的高阶32个比特long是零和低32位等于整数参数的比特。 因此,零和正int值映射到数值相等的long值,负int值映射到等于输入加2 32的long值。- 参数
-
x- 要转换为无符号的值long - 结果
-
该参数通过无符号转换转换为
long - 从以下版本开始:
- 1.8
-
divideUnsigned
public static int divideUnsigned(int dividend, int divisor)返回将第一个参数除以第二个参数的无符号商,其中每个参数和结果都被解释为无符号值。注意,在二进制补码算法中,如果两个操作数被认为是有符号的或两者都是无符号的,则加,减和乘法的其他三个基本算术运算是逐位相同的。 因此,未提供单独的
addUnsigned等方法。- 参数
-
dividend- 要划分的值 -
divisor- 进行分割的值 - 结果
- 第一个参数的无符号商除以第二个参数
- 从以下版本开始:
- 1.8
- 另请参见:
-
remainderUnsigned(int, int)
-
remainderUnsigned
public static int remainderUnsigned(int dividend, int divisor)返回将第一个参数除以第二个参数的无符号余数,其中每个参数和结果都被解释为无符号值。- 参数
-
dividend- 要划分的值 -
divisor- 进行分割的价值 - 结果
- 第一个参数的无符号余数除以第二个参数
- 从以下版本开始:
- 1.8
- 另请参见:
-
divideUnsigned(int, int)
-
highestOneBit
public static int highestOneBit(int i)
返回int值,最多只有一位,位于指定int值中最高位(“最左侧”)的一位。 如果指定的值在其二进制补码表示中没有一位,即,如果它等于零,则返回零。- 参数
-
i- 要计算其最高位的值 - 结果
-
int具有单个一位的值,位于指定值中最高位一位的位置,如果指定值本身等于零,则为零。 - 从以下版本开始:
- 1.5
-
lowestOneBit
public static int lowestOneBit(int i)
返回一个int值,最多只有一位,位于指定int值中最低位(“最右侧”)一位的位置。 如果指定的值在其二进制补码表示中没有一位,即,如果它等于零,则返回零。- 参数
-
i- 要计算其最低一位的值 - 结果
-
int具有单个一位的值,位于指定值中最低位一位的位置,如果指定值本身等于零,则为零。 - 从以下版本开始:
- 1.5
-
numberOfLeadingZeros
public static int numberOfLeadingZeros(int i)
返回指定int值的二进制补码表达式中最高位(“最左侧”)一位之前的零位数。 如果指定的值在其二进制补码表示中没有一位,则返回32,换句话说,如果它等于零。请注意,此方法与对数基数2密切相关。对于所有正值
int值x:- floor(log 2 (x))=
31 - numberOfLeadingZeros(x) - ceil(log 2 (x))=
32 - numberOfLeadingZeros(x - 1)
- 参数
-
i- 要计算其前导零数的值 - 结果
-
在指定的
int值的二进制补码表达式中,最高位(“最左侧”)一位之前的零位数,如果该值等于零,则为32位。 - 从以下版本开始:
- 1.5
- floor(log 2 (x))=
-
numberOfTrailingZeros
public static int numberOfTrailingZeros(int i)
返回指定int值的二进制补码表达式中最低位(“最右侧”)一位后的零位数。 如果指定的值在其二进制补码表示中没有一位,则返回32,换句话说,如果它等于零。- 参数
-
i- 要计算其尾随零数的值 - 结果
-
在指定的
int值的二进制补码二进制表示中,最低位(“最右侧”)一位之后的零位数,如果该值等于零,则为32位。 - 从以下版本开始:
- 1.5
-
bitCount
public static int bitCount(int i)
返回指定的int值的二进制补码表示形式中的int。 此功能有时称为人口计数 。- 参数
-
i- 要对其位进行计数的值 - 结果
-
指定的
int值的二进制补码二进制表示中的int。 - 从以下版本开始:
- 1.5
-
rotateLeft
public static int rotateLeft(int i, int distance)返回通过旋转指定int留下的指定int值的二进制补码表示形式获得的值。 (位移出左侧,或高位,侧重新输入右侧,或低位。)请注意,具有负距离的左旋转等效于右旋转:
rotateLeft(val, -distance) == rotateRight(val, distance)。 另请注意,旋转32的任意倍数都是无操作,因此即使距离为负,也可以忽略旋转距离的最后五位以外的所有位:rotateLeft(val, distance) == rotateLeft(val, distance & 0x1F)。- 参数
-
i- 其位将向左旋转的值 -
distance- 向左旋转的位位置数 - 结果
-
通过旋转指定
int留下的指定int值的二进制补码表达式获得的值。 - 从以下版本开始:
- 1.5
-
rotateRight
public static int rotateRight(int i, int distance)返回通过将指定的int值的二进制补码表示法向右旋转指定的int值。 (位移出右手,或低位,侧面重新进入左侧,或高位。)请注意,具有负距离的右旋转等效于左旋转:
rotateRight(val, -distance) == rotateLeft(val, distance)。 另请注意,按32的任意倍数旋转都是无操作,因此即使距离为负,也可以忽略旋转距离的最后五位以外的所有位:rotateRight(val, distance) == rotateRight(val, distance & 0x1F)。- 参数
-
i- 其位将向右旋转的值 -
distance- 向右旋转的位位置数 - 结果
-
通过将指定的
int值的二进制补码表达式旋转指定的int值。 - 从以下版本开始:
- 1.5
-
reverse
public static int reverse(int i)
返回通过反转指定的int值的二进制补码表达式中的位顺序获得的值。- 参数
-
i- 要反转的值 - 结果
-
通过反转指定的
int值中的位顺序获得的值。 - 从以下版本开始:
- 1.5
-
signum
public static int signum(int i)
返回指定的int值的signum函数。 (如果指定的值为负,则返回值为-1;如果指定的值为零,则返回0;如果指定的值为正,则返回1。)- 参数
-
i- 要计算其signum的值 - 结果
-
指定
int值的signum函数。 - 从以下版本开始:
- 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
- 另请参见:
-
BinaryOperator
-
max
public static int max(int a, int b)- 参数
-
a- 第一个操作数 -
b- 第二个操作数 - 结果
-
a和b的较大者 - 从以下版本开始:
- 1.8
- 另请参见:
-
BinaryOperator
-
min
public static int min(int a, int b)- 参数
-
a- 第一个操作数 -
b- 第二个操作数 - 结果
-
较小的
a和b - 从以下版本开始:
- 1.8
- 另请参见:
-
BinaryOperator
-
-