Module  java.base
软件包  java.lang

Class Integer

  • All Implemented Interfaces:
    SerializableComparable<Integer>


    public final class Integer
    extends Number
    implements Comparable<Integer>
    Integer类包装一个对象中的原始类型int的值。 类型为Integer的对象包含一个单一字段,其类型为int

    此外,该类还提供了几种将int转换为StringString转换为int ,以及其他常量和方法在处理int时非常有用。

    实施说明:“bit twiddling”方法(如highestOneBitnumberOfTrailingZeros )的实现基于Henry S. Warren,Jr.的Hacker's Delight (Addison Wesley,2002)的材料。

    从以下版本开始:
    1.0
    另请参见:
    Serialized Form
    • Field Summary

      Fields  
      Modifier and Type Field 描述
      static int BYTES
      用于表示二进制补码二进制形式的 int值的字节数。
      static int MAX_VALUE
      保持最大值一个 int可以有2 31 -1。
      static int MIN_VALUE
      持有最小值的常数为 int可以为-2 31
      static int SIZE
      用于表示二进制补码二进制形式的 int值的位数。
      static Class<Integer> TYPE
      所述 Class实例表示基本类型 int
    • 构造方法摘要

      构造方法  
      Constructor 描述
      Integer​(int value)
      已过时。
      很少使用这个构造函数。 静态工厂valueOf(int)通常是一个更好的选择,因为它可能产生明显更好的空间和时间性能。
      Integer​(String s)
      已过时。
      很少使用这个构造函数。 使用parseInt(String)将字符串转换为int原语,或使用valueOf(String)将字符串转换为Integer对象。
    • 方法摘要

      所有方法  静态方法  接口方法  具体的方法 
      Modifier and Type 方法 描述
      static int bitCount​(int i)
      返回指定的 int值的二进制补码二进制表示中的 int
      byte byteValue​()
      返回此值 Integerbyte的基本收缩转换后。
      static int compare​(int x, int y)
      数值比较两个 int值。
      int compareTo​(Integer anotherInteger)
      以数字方式比较两个 Integer对象。
      static int compareUnsigned​(int x, int y)
      比较两个 int数值以数值方式处理为无符号的值。
      static Integer decode​(String nm)
      String解码成 Integer
      static int divideUnsigned​(int dividend, int divisor)
      返回将第一个参数除以秒的无符号商,其中每个参数和结果被解释为无符号值。
      double doubleValue​()
      返回此值 Integerdouble一个宽元转换后。
      boolean equals​(Object obj)
      将此对象与指定的对象进行比较。
      float floatValue​()
      返回此值 Integerfloat一个宽元转换后。
      static Integer getInteger​(String nm)
      确定具有指定名称的系统属性的整数值。
      static Integer getInteger​(String nm, int val)
      确定具有指定名称的系统属性的整数值。
      static Integer getInteger​(String nm, Integer val)
      返回具有指定名称的系统属性的整数值。
      int hashCode​()
      返回此 Integer的哈希码。
      static int hashCode​(int value)
      返回一个int值的哈希码; 兼容Integer.hashCode()
      static int highestOneBit​(int i)
      在指定的 int值中,最高位(最左侧)为1位,最多 int返回一个 int值。
      int intValue​()
      返回 Integer的值作为 int
      long longValue​()
      在扩展原始转换后,返回 Integer的值作为 long
      static int lowestOneBit​(int i)
      在指定的 int值中,最低位(最右边)为1位,最多 int返回一个 int值。
      static int max​(int a, int b)
      返回两个 int中的较大值,就像调用 Math.max一样
      static int min​(int a, int b)
      返回两个 int中的较小值,如同通过调用 Math.min一样
      static int numberOfLeadingZeros​(int i)
      返回指定的 int值的二进制补码二进制表示中最高位(“最左”)1位之前的零位数。
      static int numberOfTrailingZeros​(int i)
      返回在指定的 int值的二进制补码二进制表示中的最低位(“最右”)1位之后的零位数。
      static int parseInt​(CharSequence s, int beginIndex, int endIndex, int radix)
      解析CharSequence参数作为有符号int指定radix ,在指定的开始beginIndex并延伸至endIndex - 1
      static int parseInt​(String s)
      将字符串参数解析为带符号的十进制整数。
      static int parseInt​(String s, int radix)
      将字符串参数解析为第二个参数指定的基数中的有符号整数。
      static int parseUnsignedInt​(CharSequence s, int beginIndex, int endIndex, int radix)
      解析CharSequence参数为一个无符号int在指定radix ,在指定的开始beginIndex并延伸到endIndex - 1
      static int parseUnsignedInt​(String s)
      将字符串参数解析为无符号十进制整数。
      static int parseUnsignedInt​(String s, int radix)
      将字符串参数解析为第二个参数指定的基数中的无符号整数。
      static int remainderUnsigned​(int dividend, int divisor)
      返回无符号余数,将第一个参数除以秒,其中每个参数和结果被解释为无符号值。
      static int reverse​(int i)
      返回通过反转指定的 int值的二进制补码二进制表示中的位的顺序获得的值。
      static int reverseBytes​(int i)
      返回通过反转指定的 int值的二进制补码表示中的字节顺序获得的值。
      static int rotateLeft​(int i, int distance)
      返回通过旋转指定的 int剩下的指定的 int值的二进制补码二进制表示获得的值。
      static int rotateRight​(int i, int distance)
      返回通过将指定的 int值的二进制补码二进制表达式右 int指定的位数而 int值。
      short shortValue​()
      在缩小原始转换后,返回 Integer的值作为 short
      static int signum​(int i)
      返回指定的 int值的signum函数。
      static int sum​(int a, int b)
      根据+运算符将两个整数相加。
      static String toBinaryString​(int i)
      在基数2中返回整数参数的字符串表示形式为无符号整数。
      static String toHexString​(int i)
      返回整数参数的字符串表示形式,作为16位中的无符号整数。
      static String toOctalString​(int i)
      在基数8中返回整数参数的字符串表示形式为无符号整数。
      String toString​()
      返回一个表示 Integer的值的 String对象。
      static String toString​(int i)
      返回表示指定整数的 String对象。
      static String toString​(int i, int radix)
      返回由第二个参数指定的基数中的第一个参数的字符串表示形式。
      static long toUnsignedLong​(int x)
      通过无符号转换将参数转换为 long
      static String toUnsignedString​(int i)
      将参数的字符串表示形式返回为无符号十进制值。
      static String toUnsignedString​(int i, int radix)
      以第二个参数指定的基数中的无符号整数值返回第一个参数的字符串表示形式。
      static Integer valueOf​(int i)
      返回表示指定的 int值的 Integer实例。
      static Integer valueOf​(String s)
      返回一个保存指定值的 Integer对象 String
      static Integer valueOf​(String s, int radix)
      返回一个 Integer对象,该对象保存从指定的 String提取的值,并使用第二个参数给出的基数进行解析。
    • 字段详细信息

      • MIN_VALUE

        @Native
        public static final int MIN_VALUE
        持有最小值的常数为 int可以为-2 31
        另请参见:
        Constant Field Values
      • MAX_VALUE

        @Native
        public static final int MAX_VALUE
        持有最大值的常数为 int可以为2 31 -1。
        另请参见:
        Constant Field Values
      • TYPE

        public static final Class<Integer> TYPE
        所述 Class实例表示基本类型 int
        从以下版本开始:
        1.1
      • SIZE

        @Native
        public static final int SIZE
        用于表示二进制补码二进制形式的 int值的位数。
        从以下版本开始:
        1.5
        另请参见:
        Constant Field Values
      • BYTES

        public static final int BYTES
        用于表示二进制补码二进制形式的 int值的字节数。
        从以下版本开始:
        1.8
        另请参见:
        Constant Field Values
    • 构造方法详细信息

      • Integer

        @Deprecated(since="9")
        public Integer​(int value)
        已过时。 很少使用这个构造函数。 静态工厂valueOf(int)通常是一个更好的选择,因为它可能产生明显更好的空间和时间性能。
        构造新分配的 Integer对象,该对象表示指定的 int值。
        参数
        value - 要由 Integer对象表示的值。
      • Integer

        @Deprecated(since="9")
        public Integer​(String s)
                throws NumberFormatException
        已过时。 很少使用这个构造函数。 使用parseInt(String)将字符串转换为int原语,或使用valueOf(String)将字符串转换为Integer对象。
        构造一个新分配的Integer对象,表示由String参数指示的int值。 字符串转换为int值,正好是基数为parseInt方法使用的方式。
        参数
        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' 如果radixN ,则这些字符的前N个按照所示顺序用作小数N位。 因此,十六进制数字( 0123456789abcdef 16)为0123456789abcdef 如果需要大写字母,则可以对结果调用String.toUpperCase()方法:
        Integer.toString(n, 16).toUpperCase()
        参数
        i - 要转换为字符串的整数。
        radix - 在字符串表示中使用的基数。
        结果
        指定基数中的参数的字符串表示形式。
        另请参见:
        Character.MAX_RADIXCharacter.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 s。

        可以通过调用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 s。

        可以通过调用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)
        在基数2中返回整数参数的字符串表示形式为无符号整数。

        如果参数为负,则无符号整数值为参数加2 32 ; 否则就等于论证。 该值转换为二进制(基本2)中的ASCII数字字符串,没有额外的前导0 s。

        可以通过调用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。
        • 由字符串所表示的值大于最大的无符号的较大int ,2 32 -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大于 endIndexendIndex大于 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 - a String其中包含要解析的无符号 int表示
        结果
        由参数以十进制表示的无符号整数值。
        异常
        NumberFormatException - 如果字符串不包含可分析的无符号整数。
        从以下版本开始:
        1.8
      • valueOf

        public static Integer valueOf​(String s,
                                      int radix)
                               throws NumberFormatException
        返回一个Integer对象,该对象保存从指定的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对象,保存由string参数表示的值。
        异常
        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​()
        返回此值 Integerbyte的基本收缩转换后。
        重写:
        byteValueNumber
        结果
        该对象在转换为 byte之后表示的数值。
        See The Java™ Language Specification:
        5.1.3缩小原始转换
      • shortValue

        public short shortValue​()
        在缩小原始转换后,返回 Integer的值作为 short
        重写:
        shortValueNumber
        结果
        该对象在转换为 short之后表示的数值。
        See The Java™ Language Specification:
        5.1.3缩小原始转换
      • intValue

        public int intValue​()
        返回 Integer的值作为 int
        Specified by:
        intValueNumber
        结果
        该对象在转换为 int之后表示的数值。
      • longValue

        public long longValue​()
        在扩展原始转换后,返回 Integer的值作为 long
        Specified by:
        longValueNumber
        结果
        该对象在转换为 long之后表示的数值。
        另请参见:
        toUnsignedLong(int)
        See The Java™ Language Specification:
        5.1.2扩大原始转换
      • floatValue

        public float floatValue​()
        返回此值 Integerfloat一个宽元转换后。
        Specified by:
        floatValueNumber
        结果
        该对象在转换为 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)方法的参数给出。
        重写:
        toString在类 Object
        结果
        这个对象在基数10中的值的字符串表示。
      • hashCode

        public static int hashCode​(int value)
        返回一个int值的哈希码; 兼容Integer.hashCode()
        参数
        value - 哈希值
        结果
        一个 int值的哈希码值。
        从以下版本开始:
        1.8
      • equals

        public boolean equals​(Object obj)
        将此对象与指定的对象进行比较。 如果且仅当参数不是null并且是包含与此对象相同的int值的Integer对象时,结果为true
        重写:
        equalsObject
        参数
        obj - 要比较的对象。
        结果
        true如果对象是一样的; 否则为false
        另请参见:
        Object.hashCode()HashMap
      • getInteger

        public static Integer getInteger​(String nm,
                                         int val)
        确定具有指定名称的系统属性的整数值。

        第一个参数被视为系统属性的名称。 系统属性可通过System.getProperty(java.lang.String)方法访问。 然后,使用decode支持的语法将该属性的字符串值解释为整数值,并返回表示此值的Integer对象。

        第二个参数是默认值。 如果没有指定名称的属性,如果该属性没有正确的数字格式,或者指定的名称为空,则返回表示第二个参数的值的Integer对象,或者是null

        换句话说,该方法返回一个Integer对象的值等于:

        getInteger(nm, new Integer(val))
        但实际上可以以下列方式实现:
         Integer result = getInteger(nm, null);
         return (result == null) ? new Integer(val) : result;
         
        以避免在不需要默认值时不必要地分配Integer对象。
        参数
        nm - 属性名称。
        val - 默认值。
        结果
        Integer价值 Integer
        异常
        SecurityException - 原因与 System.getProperty相同
        另请参见:
        System.getProperty(java.lang.String)System.getProperty(java.lang.String, java.lang.String)
      • decode

        public static Integer decode​(String nm)
                              throws NumberFormatException
        String解码成Integer 接受以下语法给出的十进制,十六进制和八进制数:
        DecodableString:
        Signopt DecimalNumeral
        Signopt 0x HexDigits
        Signopt 0X HexDigits
        Signopt # HexDigits
        Signopt 0 OctalDigits
        Sign:
        -
        +
        DecimalNumeral,HexDigits,OctalDigits如在The Java™ Language Specification 3.10.1部分所定义,所不同的是下划线不数字之间接受。

        可选符号和/或基数说明符(“ 0x ”,“ 0X ”,“ # ”或前导零)之后的Integer.parseInt由具有指示的基数(10,16或8)的Integer.parseInt方法进行解析。 这个字符序列必须表示一个正值,或者将抛出一个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 ; 和大于一个值0 ,如果这Integer在数值上大于该参数Integer (带符号的比较)。
        从以下版本开始:
        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 32long值。
        参数
        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值中,最高位(最左侧)为1位,最多返回一个int值,最多只有一个1位。 如果指定的值在其二进制补码二进制表示中没有1位,也就是说,如果它等于零,则返回零。
        参数
        i - 要计算其最高一位的值
        结果
        一个 int值,单位为1位,位于指定值中的最高位1位,如果指定值本身等于零,则为零。
        从以下版本开始:
        1.5
      • lowestOneBit

        public static int lowestOneBit​(int i)
        在指定的int值中以最低位(最右)的位置返回int值,最多只有一个1位。 如果指定的值在其二进制补码二进制表示中没有1位,也就是说,如果它等于零,则返回零。
        参数
        i - 要计算最低一位的值
        结果
        一个 int值,单位为1位,位于指定值中的最低位1位,如果指定值本身等于零,则为零。
        从以下版本开始:
        1.5
      • numberOfLeadingZeros

        public static int numberOfLeadingZeros​(int i)
        返回指定的int值的二进制补码二进制表示中的最高位(“最左”)1位之前的零位数。 如果指定的值在其二进制补码表示中没有1位,换句话说如果它等于零则返回32。

        请注意,该方法与对数基数2密切相关。对于所有正值int值x:

        • floor(log 2 (x))= 31 - numberOfLeadingZeros(x)
        • ceil(log 2 (x))= 32 - numberOfLeadingZeros(x - 1)
        参数
        i - 要计算前导零数的值
        结果
        在指定的 int值的二进制补码二进制表示中的最高位(“最左”)1位之前的零位数,如果该值等于零,则为32。
        从以下版本开始:
        1.5
      • numberOfTrailingZeros

        public static int numberOfTrailingZeros​(int i)
        返回在指定的int值的二进制补码二进制表示中的最低位(“最右”)1位之后的零位数。 如果指定的值在其二进制补码表示中没有1位,换句话说如果它等于零则返回32。
        参数
        i - 要计算尾数零的值
        结果
        在指定的 int值的二进制补码二进制表示中的最低位(“最右”)1位后的零位数,如果该值等于零,则为32位。
        从以下版本开始:
        1.5
      • bitCount

        public static int bitCount​(int i)
        返回指定的int值的二进制补码二进制表示中的int 此功能有时称为人口数量
        参数
        i - 要对其位进行计数的值
        结果
        二进制数的二进制补码二进制表示的指定值为 int
        从以下版本开始:
        1.5
      • rotateLeft

        public static int rotateLeft​(int i,
                                     int distance)
        返回通过将指定的int值的二进制补码二进制表示旋转指定的int值。 (左侧移位的位或右侧的高位侧重新输入,或低位)。

        请注意,具有负距离的左旋转相当于右旋: rotateLeft(val, -distance) == rotateRight(val, distance) 还要注意,32的任意倍数的旋转是无操作的,所以除旋转距离的最后五位之外,除了距离为负数外,也可以忽略旋转距离的最后5位: rotateLeft(val, distance) == rotateLeft(val, distance & 0x1F)

        参数
        i - 其位要向左旋转的值
        distance - 向左旋转的位位数
        结果
        通过将指定的 int值的二进制补码二进制表示旋转指定的 int值。
        从以下版本开始:
        1.5
      • rotateRight

        public static int rotateRight​(int i,
                                      int distance)
        返回通过将指定的int值的二进制补码二进制表达式右int指定的位数而int值。 (右侧移位的位或左侧的低位侧重新输入,或高位)。

        注意,具有负距离的右旋转相当于左旋: rotateRight(val, -distance) == rotateLeft(val, distance) 还要注意,32的任意倍数的旋转是无操作的,因此除旋转距离的最后五位以外,除了距离为负值外,也可以忽略旋转距离的最后5位: 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 - 要计算其符号的值
        结果
        指定功能的指定值为 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 - 第二个操作数
        结果
        总和为 ab
        从以下版本开始:
        1.8
        另请参见:
        BinaryOperator
      • max

        public static int max​(int a,
                              int b)
        返回两个 int中的较大值,就像通过调用 Math.max一样
        参数
        a - 第一个操作数
        b - 第二个操作数
        结果
        较大的 ab
        从以下版本开始:
        1.8
        另请参见:
        BinaryOperator
      • min

        public static int min​(int a,
                              int b)
        返回两个 int中的较小值,如同通过调用 Math.min一样
        参数
        a - 第一个操作数
        b - 第二个操作数
        结果
        较小的 ab
        从以下版本开始:
        1.8
        另请参见:
        BinaryOperator