
Java™ Platform Standard Ed. 6 

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
java.lang.Object java.lang.Number java.lang.Integer
public final class Integer
The Integer
class wraps a value of the primitive type
int
in an object. An object of type
Integer
contains a single field whose type is
int
.
In addition, this class provides several methods for converting an
int
to a String
and a String
to an int
, as well as other constants and methods
useful when dealing with an int
.
Implementation note: The implementations of the "bit twiddling"
methods (such as highestOneBit
and
numberOfTrailingZeros
) are
based on material from Henry S. Warren, Jr.'s Hacker's
Delight, (Addison Wesley, 2002).
Field Summary  

static int 
MAX_VALUE
A constant holding the maximum value an int can
have, 2^{31}1. 
static int 
MIN_VALUE
A constant holding the minimum value an int can
have, 2^{31}. 
static int 
SIZE
The number of bits used to represent an int value in two's complement binary form. 
static Class<Integer> 
TYPE
The Class instance representing the primitive type
int . 
Constructor Summary  

Integer(int value)
Constructs a newly allocated Integer object that
represents the specified int value. 

Integer(String s)
Constructs a newly allocated Integer object that
represents the int value indicated by the
String parameter. 
Method Summary  

static int 
bitCount(int i)
Returns the number of onebits in the two's complement binary representation of the specified int value. 
byte 
byteValue()
Returns the value of this Integer as a
byte . 
int 
compareTo(Integer anotherInteger)
Compares two Integer objects numerically. 
static Integer 
decode(String nm)
Decodes a String into an Integer . 
double 
doubleValue()
Returns the value of this Integer as a
double . 
boolean 
equals(Object obj)
Compares this object to the specified object. 
float 
floatValue()
Returns the value of this Integer as a
float . 
static Integer 
getInteger(String nm)
Determines the integer value of the system property with the specified name. 
static Integer 
getInteger(String nm,
int val)
Determines the integer value of the system property with the specified name. 
static Integer 
getInteger(String nm,
Integer val)
Returns the integer value of the system property with the specified name. 
int 
hashCode()
Returns a hash code for this Integer . 
static int 
highestOneBit(int i)
Returns an int value with at most a single onebit, in the position of the highestorder ("leftmost") onebit in the specified int value. 
int 
intValue()
Returns the value of this Integer as an
int . 
long 
longValue()
Returns the value of this Integer as a
long . 
static int 
lowestOneBit(int i)
Returns an int value with at most a single onebit, in the position of the lowestorder ("rightmost") onebit in the specified int value. 
static int 
numberOfLeadingZeros(int i)
Returns the number of zero bits preceding the highestorder ("leftmost") onebit in the two's complement binary representation of the specified int value. 
static int 
numberOfTrailingZeros(int i)
Returns the number of zero bits following the lowestorder ("rightmost") onebit in the two's complement binary representation of the specified int value. 
static int 
parseInt(String s)
Parses the string argument as a signed decimal integer. 
static int 
parseInt(String s,
int radix)
Parses the string argument as a signed integer in the radix specified by the second argument. 
static int 
reverse(int i)
Returns the value obtained by reversing the order of the bits in the two's complement binary representation of the specified int value. 
static int 
reverseBytes(int i)
Returns the value obtained by reversing the order of the bytes in the two's complement representation of the specified int value. 
static int 
rotateLeft(int i,
int distance)
Returns the value obtained by rotating the two's complement binary representation of the specified int value left by the specified number of bits. 
static int 
rotateRight(int i,
int distance)
Returns the value obtained by rotating the two's complement binary representation of the specified int value right by the specified number of bits. 
short 
shortValue()
Returns the value of this Integer as a
short . 
static int 
signum(int i)
Returns the signum function of the specified int value. 
static String 
toBinaryString(int i)
Returns a string representation of the integer argument as an unsigned integer in base 2. 
static String 
toHexString(int i)
Returns a string representation of the integer argument as an unsigned integer in base 16. 
static String 
toOctalString(int i)
Returns a string representation of the integer argument as an unsigned integer in base 8. 
String 
toString()
Returns a String object representing this
Integer 's value. 
static String 
toString(int i)
Returns a String object representing the
specified integer. 
static String 
toString(int i,
int radix)
Returns a string representation of the first argument in the radix specified by the second argument. 
static Integer 
valueOf(int i)
Returns a Integer instance representing the specified int value. 
static Integer 
valueOf(String s)
Returns an Integer object holding the
value of the specified String . 
static Integer 
valueOf(String s,
int radix)
Returns an Integer object holding the value
extracted from the specified String when parsed
with the radix given by the second argument. 
Methods inherited from class java.lang.Object 

clone, finalize, getClass, notify, notifyAll, wait, wait, wait 
Field Detail 

public static final int MIN_VALUE
int
can
have, 2^{31}.
public static final int MAX_VALUE
int
can
have, 2^{31}1.
public static final Class<Integer> TYPE
Class
instance representing the primitive type
int
.
public static final int SIZE
Constructor Detail 

public Integer(int value)
Integer
object that
represents the specified int
value.
value
 the value to be represented by the
Integer
object.public Integer(String s) throws NumberFormatException
Integer
object that
represents the int
value indicated by the
String
parameter. The string is converted to an
int
value in exactly the manner used by the
parseInt
method for radix 10.
s
 the String
to be converted to an
Integer
.
NumberFormatException
 if the String
does not
contain a parsable integer.parseInt(java.lang.String, int)
Method Detail 

public static String toString(int i, int radix)
If the radix is smaller than Character.MIN_RADIX
or larger than Character.MAX_RADIX
, then the radix
10
is used instead.
If the first argument is negative, the first element of the
result is the ASCII minus character ''
('\u002D'
). If the first argument is not
negative, no sign character appears in the result.
The remaining characters of the result represent the magnitude
of the first argument. If the magnitude is zero, it is
represented by a single zero character '0'
('\u0030'
); otherwise, the first character of
the representation of the magnitude will not be the zero
character. The following ASCII characters are used as digits:
These are0123456789abcdefghijklmnopqrstuvwxyz
'\u0030'
through
'\u0039'
and '\u0061'
through
'\u007A'
. If radix
is
N, then the first N of these characters
are used as radixN digits in the order shown. Thus,
the digits for hexadecimal (radix 16) are
0123456789abcdef
. If uppercase letters are
desired, the String.toUpperCase()
method may
be called on the result:
Integer.toString(n, 16).toUpperCase()
i
 an integer to be converted to a string.radix
 the radix to use in the string representation.
Character.MAX_RADIX
,
Character.MIN_RADIX
public static String toHexString(int i)
The unsigned integer value is the argument plus 2^{32}
if the argument is negative; otherwise, it is equal to the
argument. This value is converted to a string of ASCII digits
in hexadecimal (base 16) with no extra leading
0
s. If the unsigned magnitude is zero, it is
represented by a single zero character '0'
('\u0030'
); otherwise, the first character of
the representation of the unsigned magnitude will not be the
zero character. The following characters are used as
hexadecimal digits:
These are the characters0123456789abcdef
'\u0030'
through
'\u0039'
and '\u0061'
through
'\u0066'
. If uppercase letters are
desired, the String.toUpperCase()
method may
be called on the result:
Integer.toHexString(n).toUpperCase()
i
 an integer to be converted to a string.
public static String toOctalString(int i)
The unsigned integer value is the argument plus 2^{32}
if the argument is negative; otherwise, it is equal to the
argument. This value is converted to a string of ASCII digits
in octal (base 8) with no extra leading 0
s.
If the unsigned magnitude is zero, it is represented by a
single zero character '0'
('\u0030'
); otherwise, the first character of
the representation of the unsigned magnitude will not be the
zero character. The following characters are used as octal
digits:
These are the characters01234567
'\u0030'
through
'\u0037'
.
i
 an integer to be converted to a string.
public static String toBinaryString(int i)
The unsigned integer value is the argument plus 2^{32}
if the argument is negative; otherwise it is equal to the
argument. This value is converted to a string of ASCII digits
in binary (base 2) with no extra leading 0
s.
If the unsigned magnitude is zero, it is represented by a
single zero character '0'
('\u0030'
); otherwise, the first character of
the representation of the unsigned magnitude will not be the
zero character. The characters '0'
('\u0030'
) and '1'
('\u0031'
) are used as binary digits.
i
 an integer to be converted to a string.
public static String toString(int i)
String
object representing the
specified integer. The argument is converted to signed decimal
representation and returned as a string, exactly as if the
argument and radix 10 were given as arguments to the toString(int, int)
method.
i
 an integer to be converted.
public static int parseInt(String s, int radix) throws NumberFormatException
Character.digit(char, int)
returns a
nonnegative value), except that the first character may be an
ASCII minus sign ''
('\u002D'
) to
indicate a negative value. The resulting integer value is returned.
An exception of type NumberFormatException
is
thrown if any of the following situations occurs:
null
or is a string of
length zero.
Character.MIN_RADIX
or
larger than Character.MAX_RADIX
.
''
('\u002D'
) provided that the
string is longer than length 1.
int
.
Examples:
parseInt("0", 10) returns 0 parseInt("473", 10) returns 473 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
 the String
containing the integer
representation to be parsedradix
 the radix to be used while parsing s
.
NumberFormatException
 if the String
does not contain a parsable int
.public static int parseInt(String s) throws NumberFormatException
''
('\u002D'
) to indicate a negative value. The resulting
integer value is returned, exactly as if the argument and the radix
10 were given as arguments to the
parseInt(java.lang.String, int)
method.
s
 a String
containing the int
representation to be parsed
NumberFormatException
 if the string does not contain a
parsable integer.public static Integer valueOf(String s, int radix) throws NumberFormatException
Integer
object holding the value
extracted from the specified String
when parsed
with the radix given by the second argument. The first argument
is interpreted as representing a signed integer in the radix
specified by the second argument, exactly as if the arguments
were given to the parseInt(java.lang.String, int)
method. The result is an Integer
object that
represents the integer value specified by the string.
In other words, this method returns an Integer
object equal to the value of:
new Integer(Integer.parseInt(s, radix))
s
 the string to be parsed.radix
 the radix to be used in interpreting s
Integer
object holding the value
represented by the string argument in the specified
radix.
NumberFormatException
 if the String
does not contain a parsable int
.public static Integer valueOf(String s) throws NumberFormatException
Integer
object holding the
value of the specified String
. The argument is
interpreted as representing a signed decimal integer, exactly
as if the argument were given to the parseInt(java.lang.String)
method. The result is an
Integer
object that represents the integer value
specified by the string.
In other words, this method returns an Integer
object equal to the value of:
new Integer(Integer.parseInt(s))
s
 the string to be parsed.
Integer
object holding the value
represented by the string argument.
NumberFormatException
 if the string cannot be parsed
as an integer.public static Integer valueOf(int i)
Integer(int)
, as this method is likely to yield
significantly better space and time performance by caching
frequently requested values.
i
 an int
value.
public byte byteValue()
Integer
as a
byte
.
byteValue
in class Number
byte
.public short shortValue()
Integer
as a
short
.
shortValue
in class Number
short
.public int intValue()
Integer
as an
int
.
intValue
in class Number
int
.public long longValue()
Integer
as a
long
.
longValue
in class Number
long
.public float floatValue()
Integer
as a
float
.
floatValue
in class Number
float
.public double doubleValue()
Integer
as a
double
.
doubleValue
in class Number
double
.public String toString()
String
object representing this
Integer
's value. The value is converted to signed
decimal representation and returned as a string, exactly as if
the integer value were given as an argument to the toString(int)
method.
toString
in class Object
public int hashCode()
Integer
.
hashCode
in class Object
int
value represented by this
Integer
object.Object.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
true
if and only if the argument is not
null
and is an Integer
object that
contains the same int
value as this object.
equals
in class Object
obj
 the object to compare with.
true
if the objects are the same;
false
otherwise.Object.hashCode()
,
Hashtable
public static Integer getInteger(String nm)
The first argument is treated as the name of a system property.
System properties are accessible through the
System.getProperty(java.lang.String)
method. The
string value of this property is then interpreted as an integer
value and an Integer
object representing this value is
returned. Details of possible numeric formats can be found with
the definition of getProperty
.
If there is no property with the specified name, if the specified name
is empty or null
, or if the property does not have
the correct numeric format, then null
is returned.
In other words, this method returns an Integer
object equal to the value of:
getInteger(nm, null)
nm
 property name.
Integer
value of the property.System.getProperty(java.lang.String)
,
System.getProperty(java.lang.String, java.lang.String)
public static Integer getInteger(String nm, int val)
The first argument is treated as the name of a system property.
System properties are accessible through the System.getProperty(java.lang.String)
method. The
string value of this property is then interpreted as an integer
value and an Integer
object representing this value is
returned. Details of possible numeric formats can be found with
the definition of getProperty
.
The second argument is the default value. An Integer
object
that represents the value of the second argument is returned if there
is no property of the specified name, if the property does not have
the correct numeric format, or if the specified name is empty or
null
.
In other words, this method returns an Integer
object
equal to the value of:
getInteger(nm, new Integer(val))
but in practice it may be implemented in a manner such as:
to avoid the unnecessary allocation of anInteger result = getInteger(nm, null); return (result == null) ? new Integer(val) : result;
Integer
object when the default value is not needed.
nm
 property name.val
 default value.
Integer
value of the property.System.getProperty(java.lang.String)
,
System.getProperty(java.lang.String, java.lang.String)
public static Integer getInteger(String nm, Integer val)
System.getProperty(java.lang.String)
method.
The string value of this property is then interpreted as an
integer value, as per the Integer.decode
method,
and an Integer
object representing this value is
returned.
0x
or the ASCII character #
, not
followed by a minus sign, then the rest of it is parsed as a
hexadecimal integer exactly as by the method
valueOf(java.lang.String, int)
with radix 16.
0
followed by another character, it is parsed as an
octal integer exactly as by the method
valueOf(java.lang.String, int)
with radix 8.
valueOf(java.lang.String, int)
with radix 10.
The second argument is the default value. The default value is
returned if there is no property of the specified name, if the
property does not have the correct numeric format, or if the
specified name is empty or null
.
nm
 property name.val
 default value.
Integer
value of the property.System.getProperty(java.lang.String)
,
System.getProperty(java.lang.String, java.lang.String)
,
decode(java.lang.String)
public static Integer decode(String nm) throws NumberFormatException
String
into an Integer
.
Accepts decimal, hexadecimal, and octal numbers given
by the following grammar:
DecimalNumeral, HexDigits, and OctalDigits are defined in §3.10.1 of the Java Language Specification.
 DecodableString:
 Sign_{opt} DecimalNumeral
 Sign_{opt}
0x
HexDigits Sign_{opt}
0X
HexDigits Sign_{opt}
#
HexDigits Sign_{opt}
0
OctalDigits
 Sign:

The sequence of characters following an (optional) negative
sign and/or radix specifier ("0x
",
"0X
", "#
", or
leading zero) is parsed as by the Integer.parseInt
method with the indicated radix (10, 16, or 8). This sequence
of characters must represent a positive value or a NumberFormatException
will be thrown. The result is negated
if first character of the specified String
is the
minus sign. No whitespace characters are permitted in the
String
.
nm
 the String
to decode.
Integer
object holding the int
value represented by nm
NumberFormatException
 if the String
does not
contain a parsable integer.parseInt(java.lang.String, int)
public int compareTo(Integer anotherInteger)
Integer
objects numerically.
compareTo
in interface Comparable<Integer>
anotherInteger
 the Integer
to be compared.
0
if this Integer
is
equal to the argument Integer
; a value less than
0
if this Integer
is numerically less
than the argument Integer
; and a value greater
than 0
if this Integer
is numerically
greater than the argument Integer
(signed
comparison).public static int highestOneBit(int i)
public static int lowestOneBit(int i)
public static int numberOfLeadingZeros(int i)
Note that this method is closely related to the logarithm base 2. For all positive int values x:
public static int numberOfTrailingZeros(int i)
public static int bitCount(int i)
public static int rotateLeft(int i, int distance)
Note that left rotation with a negative distance is equivalent to right rotation: rotateLeft(val, distance) == rotateRight(val, distance). Note also that rotation by any multiple of 32 is a noop, so all but the last five bits of the rotation distance can be ignored, even if the distance is negative: rotateLeft(val, distance) == rotateLeft(val, distance & 0x1F).
public static int rotateRight(int i, int distance)
Note that right rotation with a negative distance is equivalent to left rotation: rotateRight(val, distance) == rotateLeft(val, distance). Note also that rotation by any multiple of 32 is a noop, so all but the last five bits of the rotation distance can be ignored, even if the distance is negative: rotateRight(val, distance) == rotateRight(val, distance & 0x1F).
public static int reverse(int i)
public static int signum(int i)
public static int reverseBytes(int i)

Java™ Platform Standard Ed. 6 

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.