|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.lang.Number java.lang.Integer
public final class Integer
Integer
クラスは、プリミティブ型 int
の値をオブジェクトにラップします。Integer
型のオブジェクトには、型が int
の単一フィールドが含まれます。
さらにこのクラスは、int
を String
に、String
を int
に変換する各種メソッドや、int
の処理時に役立つ定数およびメソッドも提供します。
実装にあたっての注意:「bit twiddling (ビット回転)」メソッド (highestOneBit
や numberOfTrailingZeros
) の実装は、Henry S. Warren, Jr. 著『Hacker's Delight』(Addison Wesley, 2002) に基づいています。
フィールドの概要 | |
---|---|
static int |
MAX_VALUE
int に設定可能な最大値 (231-1) を保持する定数 |
static int |
MIN_VALUE
int に設定可能な最小値 (-231) を保持する定数 |
static int |
SIZE
2 の補数バイナリ形式で int 値を表すのに使用されるビット数です。 |
static Class<Integer> |
TYPE
int のプリミティブ型を表す Class インスタンス |
コンストラクタの概要 | |
---|---|
Integer(int value)
指定された int 値を表す、新しく割り当てられた Integer オブジェクトを構築します。 |
|
Integer(String s)
String パラメータで示される int 値を表す、新しく割り当てられた Integer オブジェクトを構築します。 |
メソッドの概要 | |
---|---|
static int |
bitCount(int i)
指定された int 値の 2 の補数バイナリ表現での、1 のビットの数を返します。 |
byte |
byteValue()
この Integer の値を byte として返します。 |
int |
compareTo(Integer anotherInteger)
2 つの Integer オブジェクトを数値的に比較します。 |
static Integer |
decode(String nm)
String を Integer にデコードします。 |
double |
doubleValue()
この Integer の値を double として返します。 |
boolean |
equals(Object obj)
このオブジェクトを指定されたオブジェクトと比較します。 |
float |
floatValue()
この Integer の値を float として返します。 |
static Integer |
getInteger(String nm)
指定された名前のシステムプロパティの整数値を判定します。 |
static Integer |
getInteger(String nm,
int val)
指定された名前のシステムプロパティの整数値を判定します。 |
static Integer |
getInteger(String nm,
Integer val)
指定された名前のシステムプロパティーの整数値を返します。 |
int |
hashCode()
Integer のハッシュコードを返します。 |
static int |
highestOneBit(int i)
指定された int 値の最上位 (「もっとも左側」) の 1 のビットの位置に最大で 1 つの 1 のビットを持つ int 値。 |
int |
intValue()
この Integer の値を int として返します。 |
long |
longValue()
この Integer の値を long として返します。 |
static int |
lowestOneBit(int i)
指定された int 値の最下位 (「もっとも右側」) の 1 のビットの位置に最大で 1 つの 1 のビットを持つ int 値。 |
static int |
numberOfLeadingZeros(int i)
指定された int 値の 2 の補数バイナリ表現で最上位 (「もっとも左側」) の 1 のビットに先行するゼロのビットの数。 |
static int |
numberOfTrailingZeros(int i)
指定された int 値の 2 の補数バイナリ表現で最下位 (「もっとも右側」) の 1 ビットに続くゼロのビットの数。 |
static int |
parseInt(String s)
文字列の引数を符号付き 10 進数の整数型として構文解析します。 |
static int |
parseInt(String s,
int radix)
2 番目の引数に指定された基数をもとにして、文字列の引数を符号付き整数として構文解析します。 |
static int |
reverse(int i)
指定された int 値の 2 の補数バイナリ表現でビットの順序を逆にして取得された値を返します。 |
static int |
reverseBytes(int i)
指定された int 値の 2 の補数バイナリ表現でバイトの順序を逆にして取得された値を返します。 |
static int |
rotateLeft(int i,
int distance)
指定された int 値の 2 の補数バイナリ表現を指定したビット数だけ左に回転して取得された値を返します。 |
static int |
rotateRight(int i,
int distance)
指定された int 値の 2 の補数バイナリ表現を指定したビット数だけ右に回転して取得された値を返します。 |
short |
shortValue()
この Integer の値を short として返します。 |
static int |
signum(int i)
指定された int 値の符号要素を返します (指定した値が負の場合、戻り値は -1。 |
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)
2 番目の引数を基数として、1 番目の引数の文字列表現を返します。 |
static Integer |
valueOf(int i)
指定した int 値を表す Integer インスタンスを返します。 |
static Integer |
valueOf(String s)
指定された String の値を保持する Integer オブジェクトを返します。 |
static Integer |
valueOf(String s,
int radix)
2 番目の引数で指定された基数を使用した構文解析時に、指定された String から抽出された値を保持する Integer オブジェクトを返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
フィールドの詳細 |
---|
public static final int MIN_VALUE
int
に設定可能な最小値 (-231) を保持する定数
public static final int MAX_VALUE
int
に設定可能な最大値 (231-1) を保持する定数
public static final Class<Integer> TYPE
int
のプリミティブ型を表す Class
インスタンス
public static final int SIZE
コンストラクタの詳細 |
---|
public Integer(int value)
int
値を表す、新しく割り当てられた Integer
オブジェクトを構築します。
value
- Integer
オブジェクトによって表される値public Integer(String s) throws NumberFormatException
String
パラメータで示される int
値を表す、新しく割り当てられた Integer
オブジェクトを構築します。文字列は、基数 10 で parseInt
メソッドを使用するのとまったく同じ方法で int
値に変換されます。
s
- Integer
に変換される String
NumberFormatException
- String
が解析可能な整数型を含まない場合parseInt(java.lang.String, int)
メソッドの詳細 |
---|
public static String toString(int i, int radix)
基数が Character.MIN_RADIX
よりも小さい場合、あるいは Character.MAX_RADIX
よりも大きい場合は、代わりに 10
を基数として使います。
1 番目の引数が負の数である場合、生成された文字列の 1 番目の要素はマイナス記号の ASCII 文字「-
」(「\u002d
」) になります。1 番目の引数が負の数でない場合、生成された文字列には符号が付きません。
生成された文字列の残りの文字は、1 番目の引数の絶対値を表します。絶対値がゼロである場合は、単一のゼロ文字「0
」(「\u0030
」) で表されます。 そうでない場合は、絶対値を表す文字の 1 番目の文字はゼロではありません。次の ASCII 文字を、数字の桁に使います。
これらは、「0123456789abcdefghijklmnopqrstuvwxyz
\u0030
」〜「\u0039
」と、「\u0061
」〜「\u007A
」になります。radix
を N とすると、これらの文字の 1 文字目から N 文字目までが、基数 - N 桁として順に使われます。すなわち、16 進数 (基数は 16) に使われる桁の数字は 0123456789abcdef
となります。大文字を使いたい場合は、生成された文字列に対して String.toUpperCase()
メソッドを呼び出すことができます。
Integer.toString(n, 16).toUpperCase()
i
- 文字列に変換する整数radix
- 文字列表現に使用する基数
Character.MAX_RADIX
,
Character.MIN_RADIX
public static String toHexString(int i)
符号なし int 値は、引数が負の数の場合は、引数に 232 を加算した値になります。 そうでない場合は、引数に等しい値になります。この値は、16 進数表記 (基数 16) の ASCII 文字列による数字となります。 前に 0
は付きません。 符号なしの絶対値がゼロの場合は、単一のゼロ文字「0
」(「\u0030
」) で表されます。 そうでない場合は、符号なしの絶対値を表す文字の 1 文字目はゼロではありません。16 進数の桁には、次の文字を使います。
これらは0123456789abcdef
'\u0030'
〜 '\u0039'
と、'\u0061'
〜 '\u0066'
の文字です。大文字を使いたい場合は、生成された文字列に対して String.toUpperCase()
メソッドを呼び出すことができます。
Integer.toHexString(n).toUpperCase()
i
- 文字列に変換する整数
public static String toOctalString(int i)
符号なし int 値は、引数が負の数の場合は、引数に 232 を加算した値になります。 そうでない場合は、引数に等しい値になります。long この値は、8 進数 (基数 8) の ASCII 文字列に変換されます。前に 0
は付きません。
符号なしの絶対値がゼロの場合は、単一のゼロ文字 '0'
('\u0030'
) で表されます。そうでない場合は、符号なしの絶対値を表す文字の 1 文字目はゼロではありません。次の ASCII 文字を、8 進数の桁に使います。
これらは、01234567
'\u0030'
〜 '\u0037'
の文字です。
i
- 文字列に変換する整数
public static String toBinaryString(int i)
引数が負の数の場合は、符号なし int 値は引数に 232 を加算した値になります。 そうでない場合は、引数に等しい値になります。この値は、2 進数 (基数 2) の ASCII 文字列に変換されます。 前に 0
は付きません。 符号なしの絶対値がゼロの場合は、単一のゼロ文字「0
」(「\u0030
」) で表されます。 そうでない場合は、符号なしの絶対値を表す文字の 1 文字目はゼロではありません。2 進数の桁には、「0
」(「\u0030
」) および「1
」(「\u0031
」) が使用されます。
i
- 文字列に変換する整数
public static String toString(int i)
String
オブジェクトを返します。引数は、符号付き 10 進数表現に変換されてから文字列として返されます。 これは、引数および基数 10 を toString(int, int)
メソッドへの引数として指定した場合とまったく同じです。
i
- 変換される整数
public static int parseInt(String s, int radix) throws NumberFormatException
Character.digit(char, int)
が負ではない値を返すかどうかによって調べることができます。 ただし、1 番目の文字だけは、負の値を表すためにマイナス記号の ASCII 文字「-
」(「\u002D
」) であってもかまいません。結果として得られる整数値を返します。
以下に挙げる状況のどれかが発生した場合に、NumberFormatException
型の例外がスローされます。
null
であるか、長さゼロの文字列である
Character.MIN_RADIX
よりも小さいか、Character.MAX_RADIX
よりも大きい
'-'
('\u002d'
) であってもかまわない
int
型の値ではない
例:
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
- 構文解析対象の整数表現を含む String
radix
- s
の構文解析時に使用する基数
NumberFormatException
- String
が構文解析可能な int
値を含まない場合public static int parseInt(String s) throws NumberFormatException
-
」(「\u002D
」)であってもかまいません。結果として得られる整数値が返されます。 これは、この引数と基数 10 が parseInt(java.lang.String, int)
メソッドに引数として指定された場合とまったく同じです。
s
- 構文解析対象の int
表現を含む String
NumberFormatException
- 文字列が解析可能な整数型を含まない場合public static Integer valueOf(String s, int radix) throws NumberFormatException
String
から抽出された値を保持する Integer
オブジェクトを返します。最初の引数は、2 番目の引数で指定された基数内の符号付き整数として解釈されます。 これは、引数が parseInt(java.lang.String, int)
メソッドに渡された場合とまったく同じです。生成された結果は、文字列により指定された整数値を表す Integer
オブジェクトになります。
つまり、このメソッドが返す Integer
オブジェクトの値は、次の値に等しくなります。
new Integer(Integer.parseInt(s, radix))
s
- 解析される文字列radix
- s
の解釈に使用する基数
Integer
オブジェクト
NumberFormatException
- String
が構文解析可能な int
値を含まない場合public static Integer valueOf(String s) throws NumberFormatException
String
の値を保持する Integer
オブジェクトを返します。引数は、符号付き 10 進整数を表すと解釈されます。 これは、parseInt(java.lang.String)
メソッドに引数が指定された場合とまったく同じです。生成された結果は、文字列により指定された整数値を表す Integer
オブジェクトになります。
つまり、このメソッドが返す Integer
オブジェクトの値は、次の値に等しくなります。
new Integer(Integer.parseInt(s))
s
- 解析される文字列
Integer
オブジェクト
NumberFormatException
- 文字列が解析可能な整数型を含まない場合public static Integer valueOf(int i)
Integer(int)
に優先して使用されます。 その理由は、このメソッドが頻繁に要求される値をキャッシュするので、操作に必要な領域や時間がはるかに少なくて済む場合が多いためです。
i
- int
値
public byte byteValue()
Integer
の値を byte
として返します。
Number
内の byteValue
byte
型に変換した値public short shortValue()
Integer
の値を short
として返します。
Number
内の shortValue
short
型に変換した値public int intValue()
Integer
の値を int
として返します。
Number
内の intValue
int
型に変換した値public long longValue()
Integer
の値を long
として返します。
Number
内の longValue
long
型に変換した値public float floatValue()
Integer
の値を float
として返します。
Number
内の floatValue
float
型に変換した値public double doubleValue()
Integer
の値を double
として返します。
Number
内の doubleValue
double
型に変換した値public String toString()
Integer
の値を表す String
オブジェクトを返します。値は、符号付きの 10 進数表現に変換され、文字列として返されます。 整数値が toString(int)
メソッドの引数として指定された場合とまったく同じです。
Object
内の toString
public int hashCode()
Integer
のハッシュコードを返します。
Object
内の hashCode
Integer
オブジェクトが表すプリミティブ型 int
値に等しいObject.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
true
になるのは、引数が null
ではなく、このオブジェクトと同じ int
値を含む Integer
オブジェクトである場合だけです。
Object
内の equals
obj
- 比較対象のオブジェクト
true
、そうでない場合は false
Object.hashCode()
,
Hashtable
public static Integer getInteger(String nm)
1 番目の引数は、システムプロパティーの名前として扱われます。システムプロパティーには System.getProperty(java.lang.String)
メソッドでアクセスできます。次にこのプロパティーの文字列値が整数値として扱われ、その値を表す Integer
オブジェクトが返されます。可能な数値形式については、getProperty
の定義を参照してください。
指定された名前を持つプロパティーがない場合、指定された名前が空白または null
の場合、あるいはプロパティーが適切な数値形式でない場合は、null
が返されます。
つまり、このメソッドが返す Integer
オブジェクトの値は、次の値に等しくなります。
getInteger(nm, null)
nm
- プロパティ名
Integer
値System.getProperty(java.lang.String)
,
System.getProperty(java.lang.String, java.lang.String)
public static Integer getInteger(String nm, int val)
1 番目の引数は、システムプロパティーの名前として扱われます。システムプロパティーには System.getProperty(java.lang.String)
メソッドでアクセスできます。次にこのプロパティーの文字列値が整数値として扱われ、その値を表す Integer
オブジェクトが返されます。可能な数値形式については、getProperty
の定義を参照してください。
2 番目の引数はデフォルトの値です。指定された名前のプロパティーがない場合、該当するプロパティーが適切な数値形式でない場合、あるいは指定した名前が空白または null
の場合は、Integer
オブジェクトが示す 2 番目の引数が返されます。
つまり、このメソッドが返す Integer
オブジェクトの値は、次の値に等しくなります。
getInteger(nm, new Integer(val))
しかし実際には、次のように実装されます。
この実装により、デフォルトの値が不要な場合に、Integer result = getInteger(nm, null); return (result == null) ? new Integer(val) : result;
Integer
の余計な割り当てを避けることができます。
nm
- プロパティ名val
- デフォルト値
Integer
値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)
メソッドでアクセスできます。次にこのプロパティーの文字列値が Integer.decode
メソッドの場合と同じように整数値として解釈され、この値を表す Integer
オブジェクトが返されます。
0x
または ASCII 文字 #
で始まり、そのあとにマイナス符号がない場合は、値の残りは valueOf(java.lang.String, int)
メソッドを基数 16 で使う場合とまったく同じように 16 進整数として構文解析される
0
で始まり、それに別の文字が続く場合、値は valueOf(java.lang.String, int)
メソッドを基数 8 で使う場合とまったく同じように 8 進整数として解析される
valueOf(java.lang.String, int)
メソッドを基数 10 で使う場合とまったく同じように 10 進整数として構文解析される
2 番目の引数はデフォルトの値です。指定された名前のプロパティーがない場合、該当するプロパティーが適切な数値形式でない場合、あるいは指定した名前が空白または null
の場合は、デフォルト値が返されます。
nm
- プロパティ名val
- デフォルト値
Integer
値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
を Integer
にデコードします。次の文法の 10 進数、16 進数、および 8 進数を指定できます。
DecimalNumeral、HexDigits、および OctalDigits は、『Java 言語仕様』 の §3.10.1 で定義されています。
- DecodableString:
- Signopt DecimalNumeral
- Signopt
0x
HexDigits- Signopt
0X
HexDigits- Signopt
#
HexDigits- Signopt
0
OctalDigits
- Sign:
-
負の符号 (省略可能) と基数指示子のどちらかまたはその両方に続く文字シーケンス (「0x
」、「0X
」、「#
」、または先頭のゼロ) は、指定された基数 (10、16、または 8) で Integer.parseInt
メソッドを使う場合と同じように構文解析されます。この文字シーケンスは正の数でなければならず、そうでない場合は NumberFormatException
がスローされます。指定された String
の最初の文字が負の符号である場合、生成された結果は否定されます。String
に空白文字を指定することはできません。
nm
- 復号化対象の String
nm
により表される int
値を保持する Integer
オブジェクト
NumberFormatException
- String
が解析可能な整数型を含まない場合parseInt(java.lang.String, int)
public int compareTo(Integer anotherInteger)
Integer
オブジェクトを数値的に比較します。
Comparable<Integer>
内の compareTo
anotherInteger
- 比較対象の Integer
Integer
が引数 Integer
と等しい場合は値 0
。この Integer
が引数 Integer
より小さい数値の場合は 0
より小さい値。この Integer
が引数 Integer
より大きい数値の場合は 0
より大きい値 (符号付きの比較)public static int highestOneBit(int i)
public static int lowestOneBit(int i)
public static int numberOfLeadingZeros(int i)
このメソッドは、2 を底とする対数に密接に関係しています。 すべての正の int 値 x の場合、
public static int numberOfTrailingZeros(int i)
public static int bitCount(int i)
public static int rotateLeft(int i, int distance)
負の距離による左回転は、右回転と等価です(rotateLeft(val, -distance) == rotateRight(val, distance))。また、32 の倍数による回転は何もしません。 つまり、回転距離の最後の 5 ビット以外は、距離が負の場合でもすべて無視できます (rotateLeft(val, distance) == rotateLeft(val, distance & 0x1F))。
public static int rotateRight(int i, int distance)
負の距離による右回転は、左回転と等価です (rotateRight(val, -distance) == rotateLeft(val, distance))。また、32 の倍数による回転は何もしません。つまり、回転距離の最後の 5 ビット以外は、距離が負の場合でもすべて無視できます (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)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。