JavaTM Platform
Standard Ed. 6

java.lang
クラス Long

java.lang.Object
  上位を拡張 java.lang.Number
      上位を拡張 java.lang.Long
すべての実装されたインタフェース:
Serializable, Comparable<Long>

public final class Long
extends Number
implements Comparable<Long>

Long クラスは、プリミティブ型 long の値をオブジェクトにラップします。Long 型のオブジェクトには、型が long の単一フィールドが含まれます。

さらにこのクラスは、longString に、Stringlong に変換する各種メソッドや、long の処理時に役立つ定数およびメソッドも提供します。

実装上の注意:実装上の注意点: 「bit twiddling (ビット回転)」メソッド (highestOneBitnumberOfTrailingZeros) の実装は、Henry S. Warren, Jr. 著『Hacker's Delight』(Addison Wesley, 2002) に基づいています。

導入されたバージョン:
JDK1.0
関連項目:
直列化された形式

フィールドの概要
static long MAX_VALUE
          long に設定可能な最大値 (263-1) を保持する定数
static long MIN_VALUE
          long に設定可能な最小値 (-263) を保持する定数
static int SIZE
          2 の補数バイナリ形式で long 値を表すのに使用されるビット数です。
static Class<Long> TYPE
          long のプリミティブ型を表す Class インスタンス
 
コンストラクタの概要
Long(long value)
          指定された long の引数を表す、新しく割り当てられた Long オブジェクトを構築します。
Long(String s)
          String パラメータで示される long 値を表す、新しく割り当てられた Long オブジェクトを構築します。
 
メソッドの概要
static int bitCount(long i)
          指定された long 値の 2 の補数バイナリ表現での、1 のビットの数を返します。
 byte byteValue()
          この Long の値を byte として返します。
 int compareTo(Long anotherLong)
          2 つの Long オブジェクトを数値的に比較します。
static Long decode(String nm)
          StringLong にデコードします。
 double doubleValue()
          この Long の値を double として返します。
 boolean equals(Object obj)
          このオブジェクトを指定されたオブジェクトと比較します。
 float floatValue()
          この Long の値を float として返します。
static Long getLong(String nm)
          指定された名前のシステムプロパティーの long 値を判定します。
static Long getLong(String nm, long val)
          指定された名前のシステムプロパティーの long 値を判定します。
static Long getLong(String nm, Long val)
          指定された名前のシステムプロパティーの long 値を返します。
 int hashCode()
          この Long のハッシュコードを返します。
static long highestOneBit(long i)
          指定された long 値の最上位 (「もっとも左側」) の 1 のビットの位置に最大で 1 つの 1 のビットを持つ long 値。
 int intValue()
          この Long の値を int として返します。
 long longValue()
          この Long の値を long として返します。
static long lowestOneBit(long i)
          指定された long 値の最下位 (「もっとも右側」) の 1 のビットの位置に最大で 1 つの 1 のビットを持つ long 値。
static int numberOfLeadingZeros(long i)
          指定された long 値の 2 の補数バイナリ表現の最上位 (「もっとも左側」) の 1 のビットに先行するゼロのビットの数。
static int numberOfTrailingZeros(long i)
          指定された long 値の 2 の補数バイナリ表現で最下位 (「もっとも右側」) の 1 ビットに続くゼロのビットの数。
static long parseLong(String s)
          文字列の引数を符号付き 10 進数の long 型として構文解析します。
static long parseLong(String s, int radix)
          2 番目の引数に指定された基数をもとにして、文字列の引数を符号付き long として構文解析します。
static long reverse(long i)
          指定された long 値の 2 の補数バイナリ表現でビットの順序を逆にして取得した値を返します。
static long reverseBytes(long i)
          指定された long 値の 2 の補数バイナリ表現でバイトの順序を逆にして取得された値を返します。
static long rotateLeft(long i, int distance)
          指定された long 値の 2 の補数バイナリ表現を指定したビット数だけ左に回転して取得された値を返します。
static long rotateRight(long i, int distance)
          指定された long 値の 2 の補数バイナリ表現を指定したビット数だけ右に回転して取得された値を返します。
 short shortValue()
          この Long の値を short として返します。
static int signum(long i)
          指定した long 値の符号要素を返します (指定した値が負の場合、戻り値は -1。
static String toBinaryString(long i)
          long 型の引数の文字列表現を、基数 2 の符号なし整数として返します。
static String toHexString(long i)
          long 型の引数の文字列表現を、基数 16 の符号なし整数として返します。
static String toOctalString(long i)
          long 型の引数の文字列表現を、基数 8 の符号なし整数として返します。
 String toString()
          この Long の値を表す String オブジェクトを返します。
static String toString(long i)
          指定された long を表す String オブジェクトを返します。
static String toString(long i, int radix)
          2 番目の引数を基数として、1 番目の引数の文字列表現を返します。
static Long valueOf(long l)
          指定した Long値を表すlong インスタンスを返します。
static Long valueOf(String s)
          指定された String の値を保持する Long オブジェクトを返します。
static Long valueOf(String s, int radix)
          2 番目の引数で指定された基数を使用した構文解析時に、指定された String から抽出された値を保持する Long オブジェクトを返します。
 
クラス java.lang.Object から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

MIN_VALUE

public static final long MIN_VALUE
long に設定可能な最小値 (-263) を保持する定数

関連項目:
定数フィールド値

MAX_VALUE

public static final long MAX_VALUE
long に設定可能な最大値 (263-1) を保持する定数

関連項目:
定数フィールド値

TYPE

public static final Class<Long> TYPE
long のプリミティブ型を表す Class インスタンス

導入されたバージョン:
JDK1.1

SIZE

public static final int SIZE
2 の補数バイナリ形式で long 値を表すのに使用されるビット数です。

導入されたバージョン:
1.5
関連項目:
定数フィールド値
コンストラクタの詳細

Long

public Long(long value)
指定された long の引数を表す、新しく割り当てられた Long オブジェクトを構築します。

パラメータ:
value - Long オブジェクトが表す値

Long

public Long(String s)
     throws NumberFormatException
String パラメータで示される long 値を表す、新しく割り当てられた Long オブジェクトを構築します。文字列は、基数 10 で parseLong メソッドを使用するのと同じように long 値に変換されます。

パラメータ:
s - Long に変換される String
例外:
NumberFormatException - String が構文解析可能な long 値を含まない場合
関連項目:
parseLong(java.lang.String, int)
メソッドの詳細

toString

public static String toString(long i,
                              int radix)
2 番目の引数を基数として、1 番目の引数の文字列表現を返します。  

基数が Character.MIN_RADIX よりも小さい場合、あるいは Character.MAX_RADIX よりも大きい場合は、代わりに 10 を基数として使います。  

1 番目の引数が負の数である場合、生成された文字列の 1 番目の要素はマイナス記号の ASCII 文字「-」(「\u002d」) になります。1 番目の引数が負の数でない場合、生成された文字列には符号が付きません。  

生成された文字列の残りの文字は、1 番目の引数の絶対値を表します。絶対値がゼロである場合は、単一のゼロ文字「0」(「\u0030」) で表されます。 そうでない場合は、絶対値を表す文字の 1 番目の文字はゼロではありません。以下の ASCII 文字を、数字の桁に使います。

   0123456789abcdefghijklmnopqrstuvwxyz
 
これらは、「\u0030」〜「\u0039」と、「\u0061」〜「\u007a」になります。radixN とすると、これらの文字の 1 文字目から N 文字目までが、基数 - N 桁として順に使われます。すなわち、16 進数 (基数は 16) に使われる桁の数字は 0123456789abcdef となります。大文字を使いたい場合は、生成された文字列に対して String.toUpperCase() メソッドを呼び出すことができます。
 Long.toString(n, 16).toUpperCase()
 

パラメータ:
i - 文字列に変換する long
radix - 文字列表現に使用する基数
戻り値:
指定された基数での、引数の文字列表現
関連項目:
Character.MAX_RADIX, Character.MIN_RADIX

toHexString

public static String toHexString(long i)
long 型の引数の文字列表現を、基数 16 の符号なし整数として返します。  

引数が負の数の場合は、符号なし long 値は引数に 264 を加算した値になります。 そうでない場合は、引数に等しい値になります。この値は、16 進数表記 (基数 16) の ASCII 文字列による数字となります。 前に 0 は付きません。 符号なしの絶対値がゼロの場合は、単一のゼロ文字「0」(「\u0030」) で表されます。 そうでない場合は、符号なしの絶対値を表す文字の 1 文字目はゼロではありません。16 進数の桁には、以下の文字を使います。

 0123456789abcdef
 
これらは「\u0030」〜「\u0039」と、「\u0061」〜「\u0066」の文字です。大文字を使いたい場合は、生成された文字列に対して String.toUpperCase() メソッドを呼び出すことができます。
 Long.toHexString(n).toUpperCase()
 

パラメータ:
i - 文字列に変換する long
戻り値:
16 進数 (基数 16) の引数で表される符号なし long 値の文字列表現
導入されたバージョン:
JDK 1.0.2

toOctalString

public static String toOctalString(long i)
long 型の引数の文字列表現を、基数 8 の符号なし整数として返します。 

引数が負の数の場合は、符号なし long 値は引数に 264 を加算した値になります。 そうでない場合は、引数に等しい値になります。long この値は、8 進数 (基数 8) の ASCII 文字列に変換されます。前に 0 は付きません。

符号なしの絶対値がゼロの場合は、単一のゼロ文字 '0' ('\u0030') で表されます。そうでない場合は、符号なしの絶対値を表す文字の 1 文字目はゼロではありません。以下の ASCII 文字を、8 進数の桁に使います。

 01234567
 
これらは、'\u0030''\u0037' の文字です。

パラメータ:
i - 文字列に変換する long
戻り値:
8 進数 (基数 8) の引数で表される符号なし long 値の文字列表現
導入されたバージョン:
JDK 1.0.2

toBinaryString

public static String toBinaryString(long i)
long 型の引数の文字列表現を、基数 2 の符号なし整数として返します。 

引数が負の数の場合は、符号なし long 値は引数に 264 を加算した値になります。 そうでない場合は、引数に等しい値になります。この値は、2 進数 (基数 2) の ASCII 文字列に変換されます。 前に 0 は付きません。 符号なしの絶対値がゼロの場合は、単一のゼロ文字「0」(「\u0030」) で表されます。 そうでない場合は、符号なしの絶対値を表す文字の 1 文字目はゼロではありません。2 進数の桁には、「0」(「\u0030」) および「1」(「\u0031」) が使用されます。

パラメータ:
i - 文字列に変換する long
戻り値:
2 進数 (基数 2) の引数で表される符号なし long 値の文字列表現
導入されたバージョン:
JDK 1.0.2

toString

public static String toString(long i)
指定された long を表す String オブジェクトを返します。引数は、符号付き 10 進数表現に変換されてから文字列として返されます。 これは、引数および基数 10 を toString(long, int) メソッドへの引数として指定した場合とまったく同じです。

パラメータ:
i - 変換される long
戻り値:
10 進数 (基数 10) の引数の文字列表現

parseLong

public static long parseLong(String s,
                             int radix)
                      throws NumberFormatException
2 番目の引数に指定された基数をもとにして、文字列の引数を符号付き long として構文解析します。文字列にある文字はすべて、指定された基数の桁に使う数字でなければなりません。 これは、Character.digit(char, int) が負ではない値を返すかどうかによって調べることができます。 ただし、1 番目の文字だけは、負の値を表すためにマイナス記号の ASCII 文字「-」(「\u002D」) であってもかまいません。結果として得られる long 値が返されます。  

L ('\u004C') または l ('\u006C') を型指定子として文字列の末尾に付けることは、Java プログラム言語のソースコードの場合とは違って許されません。ただし、基数が 22 よりも大きい桁の数字には、L または l が現われます。

次に挙げる状況のどれかが発生した場合に、NumberFormatException 型の例外がスローされます。

例:

 parseLong("0", 10) returns 0L
 parseLong("473", 10) returns 473L
 parseLong("-0", 10) returns 0L
 parseLong("-FF", 16) returns -255L
 parseLong("1100110", 2) returns 102L
 parseLong("99", 8) throws a NumberFormatException
 parseLong("Hazelnut", 10) throws a NumberFormatException
 parseLong("Hazelnut", 36) returns 1356099454469L
 

パラメータ:
s - 構文解析対象の long 表現を含む String
radix - s の構文解析時に使用する基数
戻り値:
指定された基数での、文字列引数で表される long
例外:
NumberFormatException - 文字列が構文解析可能な long 値を含まない場合

parseLong

public static long parseLong(String s)
                      throws NumberFormatException
文字列の引数を符号付き 10 進数の long 型として構文解析します。文字列にある文字はすべて、10 進数でなければなりません。 ただし、1 番目の文字だけは、負の値を表すためにマイナス記号の ASCII 文字「-」(「\u002D」) であってもかまいません。結果として得られる long 値が返されます。 これは、この引数と基数 10parseLong(java.lang.String, int) メソッドに引数として指定された場合とまったく同じです。  

L ('\u004C') または l ('\u006C') を型指定子として文字列の末尾に付けることは、Java プログラムのソースコードの場合とは違って許されません。

パラメータ:
s - 構文解析対象の long 表現を含む String
戻り値:
10 進数の引数で表される long
例外:
NumberFormatException - 文字列が構文解析可能な long 値を含まない場合

valueOf

public static Long valueOf(String s,
                           int radix)
                    throws NumberFormatException
2 番目の引数で指定された基数を使用した構文解析時に、指定された String から抽出された値を保持する Long オブジェクトを返します。最初の引数は、2 番目の引数で指定された基数内の符号付き long として解釈されます。 これは、引数が parseLong(java.lang.String, int) メソッドに渡された場合とまったく同じです。結果は、文字列により指定された long 値を表す Long オブジェクトになります。  

つまり、このメソッドが返す Long オブジェクトの値は、次の値に等しくなります。

new Long(Long.parseLong(s, radix))

パラメータ:
s - 解析される文字列
radix - s の解釈に使用する基数
戻り値:
指定された基数での、文字列引数で表される値を保持する Long オブジェクト
例外:
NumberFormatException - String が構文解析可能な long 値を含まない場合

valueOf

public static Long valueOf(String s)
                    throws NumberFormatException
指定された String の値を保持する Long オブジェクトを返します。引数は、符号付き 10 進数の long として解釈されます。 これは、parseLong(java.lang.String) メソッドに引数が指定された場合とまったく同じです。生成された結果は、文字列により指定された整数値を表す Long オブジェクトになります。  

つまり、このメソッドが返す Long オブジェクトの値は、次の値に等しくなります。

 new Long(Long.parseLong(s))
 

パラメータ:
s - 構文解析される文字列
戻り値:
文字列引数により表される値を保持する Long オブジェクト
例外:
NumberFormatException - 文字列を long として構文解析できない場合

valueOf

public static Long valueOf(long l)
指定した Long値を表すlong インスタンスを返します。新規 Long インスタンスが不要な場合、通常このメソッドがコンストラクタ Long(long) に優先して使用されます。 その理由は、このメソッドが頻繁に要求される値をキャッシュするので、操作に必要な領域や時間がはるかに少なくて済む場合が多いためです。

パラメータ:
l - long 値
戻り値:
l を表す Long インスタンス
導入されたバージョン:
1.5

decode

public static Long decode(String nm)
                   throws NumberFormatException
StringLong にデコードします。以下の文法の 10 進数、16 進数、および 8 進数を指定できます。
DecodableString:
Signopt DecimalNumeral
Signopt 0x HexDigits
Signopt 0X HexDigits
Signopt # HexDigits
Signopt 0 OctalDigits  

Sign:
-
DecimalNumeralHexDigits、および OctalDigits は、『Java 言語仕様』の §3.10.1 で定義されています。  

負の符号 (省略可能) と基数指示子のどちらかまたはその両方に続く文字シーケンス (「0x」、「0X」、「#」、または先頭のゼロ) は、指定された基数 (10、16、または 8) で Long.parseLong メソッドを使う場合と同じように構文解析されます。この文字シーケンスは正の数でなければならず、そうでない場合は NumberFormatException がスローされます。指定された String の最初の文字が負の符号である場合、生成された結果は否定されます。String に空白文字を指定することはできません。

パラメータ:
nm - デコード対象の String
戻り値:
nm により表される long 値を保持する Long オブジェクト
例外:
NumberFormatException - String が構文解析可能な long 値を含まない場合
導入されたバージョン:
1.2
関連項目:
parseLong(String, int)

byteValue

public byte byteValue()
この Long の値を byte として返します。

オーバーライド:
クラス Number 内の byteValue
戻り値:
このオブジェクトが表す数値を byte 型に変換した値

shortValue

public short shortValue()
この Long の値を short として返します。

オーバーライド:
クラス Number 内の shortValue
戻り値:
このオブジェクトが表す数値を short 型に変換した値

intValue

public int intValue()
この Long の値を int として返します。

定義:
クラス Number 内の intValue
戻り値:
このオブジェクトが表す数値を int 型に変換した値

longValue

public long longValue()
この Long の値を long として返します。

定義:
クラス Number 内の longValue
戻り値:
このオブジェクトが表す数値を long 型に変換した値

floatValue

public float floatValue()
この Long の値を float として返します。

定義:
クラス Number 内の floatValue
戻り値:
このオブジェクトが表す数値を float 型に変換した値

doubleValue

public double doubleValue()
この Long の値を double として返します。

定義:
クラス Number 内の doubleValue
戻り値:
このオブジェクトが表す数値を double 型に変換した値

toString

public String toString()
この Long の値を表す String オブジェクトを返します。値は、符号付きの 10 進数表現に変換され、文字列として返されます。 これは、long 値が toString(long) メソッドの引数として指定された場合とまったく同じです。

オーバーライド:
クラス Object 内の toString
戻り値:
このオブジェクトの 10 進数 (基数 10) による文字列表現

hashCode

public int hashCode()
この Long のハッシュコードを返します。生成された結果は、この Long オブジェクトが保持するプリミティブ long 値の上位 32 ビットと下位 32 ビットの排他的論理和です。すなわち、ハッシュコードは次の式の値になります。
 (int)(this.longValue()^(this.longValue()>>>32))
 

オーバーライド:
クラス Object 内の hashCode
戻り値:
このオブジェクトのハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

equals

public boolean equals(Object obj)
このオブジェクトを指定されたオブジェクトと比較します。結果が true になるのは、引数が null ではなく、このオブジェクトと同じ Long 値を含む Long オブジェクトである場合だけです。

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - 比較対象のオブジェクト
戻り値:
オブジェクトが同じである場合は true、そうでない場合は false
関連項目:
Object.hashCode(), Hashtable

getLong

public static Long getLong(String nm)
指定された名前のシステムプロパティーの long 値を判定します。  

1 番目の引数は、システムプロパティーの名前として扱われます。システムプロパティーには System.getProperty(java.lang.String) メソッドでアクセスできます。次にこのプロパティーの文字列値が long 値として扱われ、この値を表す Long オブジェクトが返されます。可能な数値形式については、getProperty の定義を参照してください。  

指定された名前を持つプロパティーがない場合、指定された名前が空白または null の場合、あるいはプロパティーが適切な数値形式でない場合は、null が返されます。  

つまり、このメソッドが返す Long オブジェクトの値は、次の値に等しくなります。

getLong(nm, null)

パラメータ:
nm - プロパティー名
戻り値:
プロパティーの Long
関連項目:
System.getProperty(java.lang.String), System.getProperty(java.lang.String, java.lang.String)

getLong

public static Long getLong(String nm,
                           long val)
指定された名前のシステムプロパティーの long 値を判定します。  

1 番目の引数は、システムプロパティーの名前として扱われます。システムプロパティーには System.getProperty(java.lang.String) メソッドでアクセスできます。次にこのプロパティーの文字列値が long 値として扱われ、この値を表す Long オブジェクトが返されます。可能な数値形式については、getProperty の定義を参照してください。  

2 番目の引数はデフォルトの値です。指定された名前のプロパティーがない場合、該当するプロパティーが適切な数値形式でない場合、あるいは指定した名前が空白または null の場合は、Long オブジェクトが示す 2 番目の引数が返されます。  

つまり、このメソッドが返す Long オブジェクトの値は、次の値に等しくなります。

getLong(nm, new Long(val))
しかし実際には、次のように実装されます。
 Long result = getLong(nm, null);
 return (result == null) ? new Long(val) : result;
 
この実装により、デフォルトの値が不要な場合に、Long オブジェクトの余計な割り当てを避けることができます。

パラメータ:
nm - プロパティー名
val - デフォルト値
戻り値:
プロパティーの Long
関連項目:
System.getProperty(java.lang.String), System.getProperty(java.lang.String, java.lang.String)

getLong

public static Long getLong(String nm,
                           Long val)
指定された名前のシステムプロパティーの long 値を返します。1 番目の引数は、システムプロパティーの名前として扱われます。システムプロパティーには System.getProperty(java.lang.String) メソッドでアクセスできます。次にこのプロパティーの文字列値が Long.decode メソッドの場合と同じように long 値として扱われ、この値を表す Long オブジェクトが返されます。  

いずれの場合にも、L ('\u004C') または l ('\u006C') を型指定子としてプロパティー値の末尾に付けることは、Java プログラムのソースコードの場合とは違って許されません。  

2 番目の引数はデフォルトの値です。指定された名前のプロパティーがない場合、該当するプロパティーが適切な数値形式でない場合、あるいは指定した名前が空白または null の場合は、デフォルト値が返されます。

パラメータ:
nm - プロパティー名
val - デフォルト値
戻り値:
プロパティーの Long
関連項目:
System.getProperty(java.lang.String), System.getProperty(java.lang.String, java.lang.String), decode(java.lang.String)

compareTo

public int compareTo(Long anotherLong)
2 つの Long オブジェクトを数値的に比較します。

定義:
インタフェース Comparable<Long> 内の compareTo
パラメータ:
anotherLong - 比較対象の Long
戻り値:
この Long が引数 Long と等しい場合は値 0。この Long が引数 Long より小さい数値の場合は 0 より小さい値。この Long が引数 Long より大きい数値の場合は 0 より大きい値 (符号付きの比較)
導入されたバージョン:
1.2

highestOneBit

public static long highestOneBit(long i)
指定された long 値の最上位 (「もっとも左側」) の 1 のビットの位置に最大で 1 つの 1 のビットを持つ long 値。指定された値が 2 の補数バイナリ表現の 1 のビットを持たない場合、つまりゼロに等しい場合はゼロを返します。

戻り値:
指定された値の最上位の 1 ビットの位置に 1 つの 1 のビットを持つ long 値。 指定された値がゼロに等しい場合はゼロ
導入されたバージョン:
1.5

lowestOneBit

public static long lowestOneBit(long i)
指定された long 値の最下位 (「もっとも右側」) の 1 のビットの位置に最大で 1 つの 1 のビットを持つ long 値。指定された値が 2 の補数バイナリ表現の 1 のビットを持たない場合、つまりゼロに等しい場合はゼロを返します。

戻り値:
指定された値の最下位の 1 のビットの位置に 1 つの 1 のビットを持つ long 値。指定された値がゼロに等しい場合はゼロ
導入されたバージョン:
1.5

numberOfLeadingZeros

public static int numberOfLeadingZeros(long i)
指定された long 値の 2 の補数バイナリ表現の最上位 (「もっとも左側」) の 1 のビットに先行するゼロのビットの数。指定された値が 2 の補数表現の 1 のビットを持たない場合、つまりゼロに等しい場合は 64 を返します。

このメソッドは、2 を底とする対数に密接に関係しています。 すべての正の long 値 x の場合、

戻り値:
指定された long 値の 2 の補数バイナリ表現で最上位 (「もっとも左側」) の 1 のビットに先行するゼロのビットの数。指定された値がゼロに等しい場合は 64
導入されたバージョン:
1.5

numberOfTrailingZeros

public static int numberOfTrailingZeros(long i)
指定された long 値の 2 の補数バイナリ表現で最下位 (「もっとも右側」) の 1 ビットに続くゼロのビットの数。指定された値が 2 の補数表現の 1 のビットを持たない場合、つまりゼロに等しい場合は 64 を返します。

戻り値:
指定された long 値の 2 の補数 2 進表現の最下位 (「もっとも右側」) の 1 のビットに続くゼロのビットの数。指定された値がゼロに等しい場合は 64
導入されたバージョン:
1.5

bitCount

public static int bitCount(long i)
指定された long 値の 2 の補数バイナリ表現での、1 のビットの数を返します。この関数は、「ポピュレーションカウント」と呼ばれる場合があります。

戻り値:
指定された long 値の 2 の補数バイナリ表現での、1 のビットの数
導入されたバージョン:
1.5

rotateLeft

public static long rotateLeft(long i,
                              int distance)
指定された long 値の 2 の補数バイナリ表現を指定したビット数だけ左に回転して取得された値を返します。ビットは、左側つまり上位にシフトされ、右側つまり下位に入ります。

負の距離による左回転は、右回転と等価です(rotateLeft(val, -distance) == rotateRight(val, distance))。また、64 の倍数による回転は何もしません。 つまり、回転距離の最後の 6 ビット以外は、距離が負の場合でもすべて無視できます (rotateLeft(val, distance) == rotateLeft(val, distance & 0x3F))。

戻り値:
指定された long 値の 2 の補数バイナリ表現を指定されたビット数だけ左に回転して取得した値
導入されたバージョン:
1.5

rotateRight

public static long rotateRight(long i,
                               int distance)
指定された long 値の 2 の補数バイナリ表現を指定したビット数だけ右に回転して取得された値を返します。ビットは、右側つまり下位にシフトされ、左側つまり上位に入ります。

負の距離による右回転は、左回転と等価です (rotateRight(val, -distance) == rotateLeft(val, distance))。また、64 の倍数による回転は何もしません。 つまり回転距離の最後の 6 ビット以外のすべては、距離が負の場合でも無視できます (rotateRight(val, distance) == rotateRight(val, distance & 0x3F))。

戻り値:
指定された long 値の 2 の補数バイナリ表現を指定されたビット数だけ右に回転して取得した値
導入されたバージョン:
1.5

reverse

public static long reverse(long i)
指定された long 値の 2 の補数バイナリ表現でビットの順序を逆にして取得した値を返します。

戻り値:
指定された long 値でバイト順を逆にして取得した値
導入されたバージョン:
1.5

signum

public static int signum(long i)
指定した long 値の符号要素を返します (指定した値が負の場合、戻り値は -1。指定された値がゼロの場合は 0。 指定した値が正の場合は 1)。

戻り値:
指定された long 値の符号要素
導入されたバージョン:
1.5

reverseBytes

public static long reverseBytes(long i)
指定された long 値の 2 の補数バイナリ表現でバイトの順序を逆にして取得された値を返します。

戻り値:
指定された long 値のバイト順を逆にして取得された値
導入されたバージョン:
1.5

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。