public final class Double extends Number implements Comparable<Double>
Double
クラスは、プリミティブ型double
の値をオブジェクトにラップします。 Double
型のオブジェクトには、型がdouble
の単一フィールドが含まれます。
さらにこのクラスは、double
をString
に、String
をdouble
に変換する各種メソッドや、double
の処理時に役立つ定数およびメソッドも提供します。
修飾子と型 | フィールド | 説明 |
---|---|---|
static int |
BYTES |
double 値を表すために使用されるバイト数です。 |
static int |
MAX_EXPONENT |
有限の
double 変数が持つ可能性のある最大指数です。 |
static double |
MAX_VALUE |
double 型の正の最大有限値(2-2-52)·21023です。 |
static int |
MIN_EXPONENT |
正規化された
double 変数が持つ可能性のある最小指数です。 |
static double |
MIN_NORMAL |
double 型の正の最小標準値2-1022を保持する定数です。 |
static double |
MIN_VALUE |
double 型の正の最小非ゼロ値2-1074を保持する定数です。 |
static double |
NaN |
double 型の非数(NaN)値を保持する定数です。 |
static double |
NEGATIVE_INFINITY |
double 型の負の無限大値を保持する定数です。 |
static double |
POSITIVE_INFINITY |
double 型の正の無限大値を保持する定数です。 |
static int |
SIZE |
double 値を表すのに使われるビット数です。 |
static Class<Double> |
TYPE |
プリミティブ型
double を表すClass インスタンス。 |
コンストラクタ | 説明 |
---|---|
Double(double value) |
プリミティブの
double 引数を表す、新しく割り当てられたDouble オブジェクトを構築します。 |
Double(String s) |
文字列で表される
double 型の浮動小数点を表す、新しく割り当てられるDouble オブジェクトを構築します。 |
修飾子と型 | メソッド | 説明 |
---|---|---|
byte |
byteValue() |
この
Double の縮小プリミティブ変換後の値をbyte として返します。 |
static int |
compare(double d1, double d2) |
指定された2つの
double 値を比較します。 |
int |
compareTo(Double anotherDouble) |
2つの
Double オブジェクトを数値的に比較します。 |
static long |
doubleToLongBits(double value) |
IEEE 754浮動小数点の「ダブル・フォーマット(double format)」ビット・レイアウトに従って、指定された浮動小数点の値を表現して返します。
|
static long |
doubleToRawLongBits(double value) |
IEEE 754浮動小数点の「ダブル・フォーマット(double format)」ビット・レイアウトに従って、非数(NaN)値を保持する、指定された浮動小数点値の表現を返します。
|
double |
doubleValue() |
この
Double オブジェクトのdouble 値を返します。 |
boolean |
equals(Object obj) |
このオブジェクトと指定されたオブジェクトを比較します。
|
float |
floatValue() |
この
Double の縮小プリミティブ変換後の値をfloat として返します。 |
int |
hashCode() |
この
Double オブジェクトのハッシュ・コードを返します。 |
static int |
hashCode(double value) |
Double.hashCode() との互換性がある、double 値のハッシュ・コードを返します。 |
int |
intValue() |
この
Double の縮小プリミティブ変換後の値をint として返します。 |
static boolean |
isFinite(double d) |
引数が有限の浮動小数点値である場合は
true を返し、そうでない場合(NaNおよび無限大の引数の場合)はfalse を返します。 |
boolean |
isInfinite() |
この
Double 値の絶対値が無限量である場合にはtrue を、そうでない場合にはfalse を返します。 |
static boolean |
isInfinite(double v) |
指定された数値の絶対値が無限量である場合には
true を、そうでない場合にはfalse を返します。 |
boolean |
isNaN() |
この
Double 値が非数(NaN)である場合にはtrue を、そうでない場合はfalse を返します。 |
static boolean |
isNaN(double v) |
指定された数値が非数(NaN)である場合には
true を、そうでない場合はfalse を返します。 |
static double |
longBitsToDouble(long bits) |
指定されたビット表現と対応する
double 値を返します。 |
long |
longValue() |
この
Double の縮小プリミティブ変換後の値をlong として返します。 |
static double |
max(double a, double b) |
Math.max を呼び出した場合と同様に、2つのdouble 値の大きいほうを返します。 |
static double |
min(double a, double b) |
Math.min を呼び出した場合と同様に、2つのdouble 値の小さいほうを返します。 |
static double |
parseDouble(String s) |
Double クラスのvalueOf メソッドを実行した場合と同様に、指定されたString が表す値に初期化された新しいdouble 値を返します。 |
short |
shortValue() |
この
Double の縮小プリミティブ変換後の値をshort として返します。 |
static double |
sum(double a, double b) |
+演算子のように、2つの
double 値を加算します。 |
static String |
toHexString(double d) |
double 引数の16進数文字列表現を返します。 |
String |
toString() |
この
Double オブジェクトの文字列表現を返します。 |
static String |
toString(double d) |
double 引数の文字列表現を返します。 |
static Double |
valueOf(double d) |
指定された
double 値を表すDouble インスタンスを返します。 |
static Double |
valueOf(String s) |
文字列引数
s で表されるdouble 値を保持するDouble オブジェクトを返します。 |
public static final double POSITIVE_INFINITY
double
型の正の無限大値を保持する定数です。 これは、Double.longBitsToDouble(0x7ff0000000000000L)
から返される値と等しくなります。 public static final double NEGATIVE_INFINITY
double
型の負の無限大値を保持する定数です。 これは、Double.longBitsToDouble(0xfff0000000000000L)
から返される値と等しくなります。 public static final double NaN
double
型の非数(NaN)値を保持する定数です。 これは、Double.longBitsToDouble(0x7ff8000000000000L)
から返される値と等しくなります。 public static final double MAX_VALUE
double
型の正の最大有限値(2-2-52)·21023です。 16進数浮動小数点リテラル0x1.fffffffffffffP+1023
と同等であり、Double.longBitsToDouble(0x7fefffffffffffffL)
とも同等です。 public static final double MIN_NORMAL
double
型の正の最小標準値2-1022を保持する定数です。 16進数浮動小数点リテラル0x1.0p-1022
と同等であり、Double.longBitsToDouble(0x0010000000000000L)
とも同等です。 public static final double MIN_VALUE
double
型の正の最小非ゼロ値2-1074を保持する定数です。 16進数浮動小数点リテラル0x0.0000000000001P-1022
と同等であり、Double.longBitsToDouble(0x1L)
とも同等です。 public static final int MAX_EXPONENT
double
変数が持つ可能性のある最大指数です。 これは、Math.getExponent(Double.MAX_VALUE)
から返される値と等しくなります。 public static final int MIN_EXPONENT
double
変数が持つ可能性のある最小指数です。 これは、Math.getExponent(Double.MIN_NORMAL)
から返される値と等しくなります。 public static final int SIZE
double
値を表すのに使われるビット数です。public static final int BYTES
double
値を表すために使用されるバイト数です。public Double(double value)
double
引数を表す、新しく割り当てられたDouble
オブジェクトを構築します。value
- Double
によって表される値。public Double(String s) throws NumberFormatException
double
型の浮動小数点を表す、新しく割り当てられるDouble
オブジェクトを構築します。 文字列は、valueOf
メソッドと同様にdouble
値に変換されます。 s
- Double
に変換する文字列。NumberFormatException
- 文字列が解析可能な数値を含まない場合。valueOf(java.lang.String)
public static String toString(double d)
double
引数の文字列表現を返します。 次の文字はすべてASCII文字です。
NaN
」。
-
」('\u002D'
)となり、符号が正の場合、結果の文字列に符号文字は表示されない。 絶対値mについては、次のとおり:
"Infinity"
で表される。したがって、正の無限大の結果は"Infinity"
、負の無限大の結果は"-Infinity"
となる。
"0.0"
で表される。したがって、負のゼロの結果は"-0.0"
、正のゼロの結果は"0.0"
となる。
.
」('\u002E'
)、mの小数部を表す1桁以上の10進数、を順に並べたもので表現される。
.
」('\u002E'
)、aの小数部を表す何桁かの10進数、文字「E
」('\u0045'
)、nを10進整数として表現したもの(メソッドInteger.toString(int)
で生成)、を順に並べたもので表現される。
double
型の隣接する値から引数を一意に識別するのに最低限必要な桁数にしてください。 たとえば、ゼロでない有限の引数dを指定してこのメソッドで作成した10進値表記をxとします。 この場合、dはxにもっとも近いdouble
値でなければいけませんが、xまでの距離が同一のdouble
値が2つ存在する場合は、dはそのどちらかであり、かつdの仮数の最下位ビットが0
でなければいけません。
浮動小数点値のローカライズされた文字列表現を作成する場合、NumberFormat
のサブクラスを使用します。
d
- 変換するdouble
。public static String toHexString(double d)
double
引数の16進数文字列表現を返します。 次の文字はすべてASCII文字です。
NaN
」。
-
」('\u002D'
)となり、符号が正の場合、結果の文字列に符号文字は表示されない。 絶対値mについては、次のとおり:
"Infinity"
で表される。したがって、正の無限大の結果は"Infinity"
、負の無限大の結果は"-Infinity"
となる。
"0x0.0p0"
で表される。したがって、負のゼロの結果は"-0x0.0p0"
、正のゼロの結果は"0x0.0p0"
となる。
double
値の場合は、有効数字と指数のフィールドを表すのに部分文字列が使われる。 有効数字は、文字列"0x1."
と、小数部として残りの有効数字の小文字の16進表現を続けて表される。 すべての桁が0でないかぎり(すべてが0の場合は単一の0を使用)、16進表現の末尾の0は削除される。 次に、指数は、指数値でInteger.toString
を呼び出して生成するときのように、"p"
とそれに続く完全な指数の10進数文字列で表される。
double
値の場合、有効数字は、文字列"0x0."
と、小数部として残りの有効数字の16進表現を続けて表される。 16進表現の末尾の0は削除されます。 次に、指数は"p-1022"
で表される。 サブノーマル有効数字内に、ゼロでない数字が1つ以上存在する必要があることに留意してください。
浮動小数点値 | 16進数文字列 |
---|---|
1.0 | 0x1.0p0 |
-1.0 | -0x1.0p0 |
2.0 | 0x1.0p1 |
3.0 | 0x1.8p1 |
0.5 | 0x1.0p-1 |
0.25 | 0x1.0p-2 |
Double.MAX_VALUE |
0x1.fffffffffffffp1023 |
Minimum Normal Value |
0x1.0p-1022 |
Maximum Subnormal Value |
0x0.fffffffffffffp-1022 |
Double.MIN_VALUE |
0x0.0000000000001p-1022 |
d
- 変換するdouble
。public static Double valueOf(String s) throws NumberFormatException
s
で表されるdouble
値を保持するDouble
オブジェクトを返します。
s
がnull
の場合、NullPointerException
がスローされます。
s
内の先頭と末尾の空白文字は無視されます。 空白文字は、String.trim()
メソッドで削除されるときのように削除されます。つまり、ASCIIの空白文字と制御文字の両方が削除されます。 s
の残りの文字が、次の字句構文ルールに従ってFloatValueを構成します。
ここで、Sign、FloatingPointLiteral、HexNumeral、HexDigits、SignedInteger、およびFloatTypeSuffixは、『Java™言語仕様』の字句構造セクションで規定されているとおりですが、桁間のアンダースコアが受け入れられない点だけは規定と異なります。
- FloatValue:
- Signopt
NaN
- Signopt
Infinity
- Signopt FloatingPointLiteral
- Signopt HexFloatingPointLiteral
- SignedInteger
- HexFloatingPointLiteral:
- HexSignificand BinaryExponent FloatTypeSuffixopt
- HexSignificand:
- HexNumeral
- HexNumeral
.
0x
HexDigitsopt.
HexDigits0X
HexDigitsopt.
HexDigits
- BinaryExponent:
- BinaryExponentIndicator SignedInteger
- BinaryExponentIndicator:
p
P
s
の形式がFloatValueでない場合は、NumberFormatException
がスローされます。 そうでない場合、s
は通常の「浮動小数点表記」、つまり正確な10進値または16進値を表していると見なされます。この正確な数値は、概念上は「無限に正確なバイナリ値」に変換されてから、IEEE 754浮動小数点計算法による通常の最近似値丸め法(ゼロ値の符号保持を含む)に従ってdouble
型に丸められます。 最近似値丸め法は、オーバーフローやアンダーフローの動作が発生することも意味します。s
の正確な値の絶対値が十分大きい場合(MAX_VALUE
+ ulp(MAX_VALUE)
/2以上の場合)、double
に丸めると無限大になり、s
の正確な値が十分小さい場合(MIN_VALUE
/2以下の場合)、float に丸めるとゼロになることに注意してください。 最後に、丸めが完了したら、このdouble
値を表すDouble
オブジェクトが返されます。
浮動小数点値のローカライズされた文字列表現を解釈する場合、NumberFormat
のサブクラスを使用します。
末尾の形式指定子つまり浮動小数点リテラルの種類を決定する指定子(1.0f
はfloat
値、1.0d
はdouble
値)は、このメソッドの結果に与えません。 つまり、入力文字列の数値は、ターゲットの浮動小数点型に直接変換されます。 文字列をfloat
に変換し、float
をdouble
に変換する2ステップのシーケンスは、文字列をdouble
に変換するのと等価ではありません。 たとえば、float
リテラル0.1f
はdouble
値0.10000000149011612
と等価です。float
リテラル0.1f
はdouble
リテラル0.1
とは異なる数値を表します。 数値0.1をバイナリ浮動小数点数で正確に表すことはできません。
無効な文字列でこのメソッドが呼び出されたり、NumberFormatException
がスローされたりしないようにするには、次の正規表現を使って入力文字列をスクリーニングできます。
final String Digits = "(\\p{Digit}+)";
final String HexDigits = "(\\p{XDigit}+)";
// an exponent is 'e' or 'E' followed by an optionally
// signed decimal integer.
final String Exp = "[eE][+-]?"+Digits;
final String fpRegex =
("[\\x00-\\x20]*"+ // Optional leading "whitespace"
"[+-]?(" + // Optional sign character
"NaN|" + // "NaN" string
"Infinity|" + // "Infinity" string
// A decimal floating-point string representing a finite positive
// number without a leading sign has at most five basic pieces:
// Digits . Digits ExponentPart FloatTypeSuffix
//
// Since this method allows integer-only strings as input
// in addition to strings of floating-point literals, the
// two sub-patterns below are simplifications of the grammar
// productions from section 3.10.2 of
// The Java Language Specification.
// Digits ._opt Digits_opt ExponentPart_opt FloatTypeSuffix_opt
"((("+Digits+"(\\.)?("+Digits+"?)("+Exp+")?)|"+
// . Digits ExponentPart_opt FloatTypeSuffix_opt
"(\\.("+Digits+")("+Exp+")?)|"+
// Hexadecimal strings
"((" +
// 0[xX] HexDigits ._opt BinaryExponent FloatTypeSuffix_opt
"(0[xX]" + HexDigits + "(\\.)?)|" +
// 0[xX] HexDigits_opt . HexDigits BinaryExponent FloatTypeSuffix_opt
"(0[xX]" + HexDigits + "?(\\.)" + HexDigits + ")" +
")[pP][+-]?" + Digits + "))" +
"[fFdD]?))" +
"[\\x00-\\x20]*");// Optional trailing "whitespace"
if (Pattern.matches(fpRegex, myString))
Double.valueOf(myString); // Will not throw NumberFormatException
else {
// Perform suitable alternative action
}
s
- 解析される文字列。String
引数により表される値を保持するDouble
オブジェクト。NumberFormatException
- 文字列が解析可能な数値を含まない場合。public static Double valueOf(double d)
double
値を表すDouble
インスタンスを返します。 新規Double
インスタンスが不要な場合、通常このメソッドがコンストラクタDouble(double)
に優先して使用されます。その理由は、このメソッドが頻繁に要求される値をキャッシュするので、操作に必要な領域や時間がはるかに少なくて済む場合が多いためです。 d
- double値。d
を表すDouble
インスタンス。public static double parseDouble(String s) throws NumberFormatException
Double
クラスのvalueOf
メソッドを実行した場合と同様に、指定されたString
が表す値に初期化された新しいdouble
値を返します。s
- 解析される文字列。double
値。NullPointerException
- 文字列がnullの場合NumberFormatException
- 文字列が解析可能なdouble
を含まない場合valueOf(String)
public static boolean isNaN(double v)
true
を、そうでない場合はfalse
を返します。v
- 判定される値。true
、そうでない場合はfalse
。public static boolean isInfinite(double v)
true
を、そうでない場合にはfalse
を返します。v
- 判定される値。true
、そうでない場合はfalse
。public static boolean isFinite(double d)
true
を返し、そうでない場合(NaNおよび無限大の引数の場合)はfalse
を返します。d
- 判定されるdouble
値true
、それ以外の場合はfalse
public boolean isNaN()
Double
値が非数(NaN)である場合にはtrue
を、そうでない場合はfalse
を返します。true
、そうでない場合はfalse
。public boolean isInfinite()
Double
値の絶対値が無限量である場合にはtrue
を、そうでない場合にはfalse
を返します。true
、そうでない場合はfalse
。public String toString()
Double
オブジェクトの文字列表現を返します。 このオブジェクトが表すプリミティブdouble
値は、1つの引数を取るtoString
メソッドを実行した場合と同じ文字列に変換されます。 toString
、クラスObject
String
表現。toString(double)
public byte byteValue()
Double
の縮小プリミティブ変換後の値をbyte
として返します。public short shortValue()
Double
の縮小プリミティブ変換後の値をshort
として返します。shortValue
、クラスNumber
double
値をshort
型に変換したものpublic int intValue()
Double
の縮小プリミティブ変換後の値をint
として返します。public long longValue()
Double
の縮小プリミティブ変換後の値をlong
として返します。public float floatValue()
Double
の縮小プリミティブ変換後の値をfloat
として返します。floatValue
、クラスNumber
double
値をfloat
型に変換したものpublic double doubleValue()
Double
オブジェクトのdouble
値を返します。doubleValue
、クラスNumber
double
値public int hashCode()
Double
オブジェクトのハッシュ・コードを返します。 計算された結果は、doubleToLongBits(double)
メソッドの結果とまったく同じように、このDouble
オブジェクトが表すプリミティブdouble
値のlong
整数をビット表現した上位32ビットと下位32ビットの排他的論理和になります。 すなわち、ハッシュ・コードは次の式の値です。
(int)(v^(v>>>32))
ただし、v
は次の式によって定義されます。
long v = Double.doubleToLongBits(this.doubleValue());
hashCode
、クラスObject
ハッシュ・コード
値。Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public static int hashCode(double value)
Double.hashCode()
との互換性がある、double
値のハッシュ・コードを返します。value
- ハッシュ対象の値double
値のハッシュ・コード値。public boolean equals(Object obj)
true
になるのは、引数がnull
でなく、このオブジェクトが表すdouble
値と同じ値を保持するdouble
を表すDouble
オブジェクトである場合だけです。 このため、2つのdouble
値が等しいと見なされるのは、doubleToLongBits(double)
メソッドを各値に適用したときに同一のlong
値が返される場合だけです。
ほとんどの場合、クラスDouble
の2つのインスタンスd1
とd2
について、d1.equals(d2)
の値がtrue
になるのは、
d1.doubleValue() == d2.doubleValue()
上記の値もtrue
になる場合だけです。 しかし、例外事項も2つあります。
d1
とd2
がどちらもDouble.NaN
を表している場合、Double.NaN==Double.NaN
の値がfalse
になるにもかかわらず、equals
メソッドからはtrue
が返されます。
d1
が+0.0
を表し、d2
が-0.0
を表している場合、あるいはその逆の場合、+0.0==-0.0
の値がtrue
になるにもかかわらず、equal
テストの値はfalse
になります。
equals
、クラスObject
obj
- 比較対象のオブジェクト。true
、そうでない場合はfalse
。doubleToLongBits(double)
public static long doubleToLongBits(double value)
ビット63 (マスク0x8000000000000000L
によって選択されるビット)は、浮動小数点の符号を表します。 ビット62-52 (マスク0x7ff0000000000000L
によって選択されるビット)は、指数を表します。 ビット51-0 (マスク0x000fffffffffffffL
によって選択されるビット)は、浮動小数点の有効値(仮数と呼ばれる場合もある)を表します。
引数が正の無限大の場合、結果は0x7ff0000000000000L
になります。
引数が負の無限大の場合、結果は0xfff0000000000000L
になります。
引数がNaNの場合、結果は0x7ff8000000000000L
になります。
どの場合も、返される値はlong
整数であり、longBitsToDouble(long)
メソッドを指定すると、doubleToLongBits
への引数と同じ浮動小数点値になります(すべてのNaN値が単一の「正規」NaN値に収納されることを除く)。
value
- double
精度の浮動小数点値。public static long doubleToRawLongBits(double value)
ビット63 (マスク0x8000000000000000L
によって選択されるビット)は、浮動小数点の符号を表します。 ビット62-52 (マスク0x7ff0000000000000L
によって選択されるビット)は、指数を表します。 ビット51-0 (マスク0x000fffffffffffffL
によって選択されるビット)は、浮動小数点の有効値(仮数と呼ばれる場合もある)を表します。
引数が正の無限大の場合、結果は0x7ff0000000000000L
になります。
引数が負の無限大の場合、結果は0xfff0000000000000L
になります。
引数がNaNの場合、返される値は実際のNaN値を示すlong
整数です。 doubleToLongBits
メソッドとは異なり、doubleToRawLongBits
メソッドが、すべてのビット・パターン符号化NaNを単一の「正規」NaN値に収納することはありません。
どの場合も、返される値はlong
整数であり、longBitsToDouble(long)
メソッドを指定すると、doubleToRawLongBits
への引数と同じ浮動小数点値になります。
value
- double
精度の浮動小数点値。public static double longBitsToDouble(long bits)
double
値を返します。 引数は、IEEE 754浮動小数点「倍精度」ビット配列に従った浮動小数点表現と見なされます。
引数が0x7ff0000000000000L
の場合、結果は正の無限大値になります。
引数が0xfff0000000000000L
の場合、結果は負の無限大値になります。
引数が0x7ff0000000000001L
から0x7fffffffffffffffL
、または0xfff0000000000001L
から0xffffffffffffffffL
の範囲内の値である場合、結果はNaNになります。 Javaにより提供されるIEEE 754浮動小数点操作は、異なるビット・パターンを持つ同じ型の2つのNaN値を識別できません。 個別のNaN値を識別できるのは、Double.doubleToRawLongBits
メソッドを使用する場合だけです。
そのほかの場合では、s、e、およびmの3つの値について次の引数から計算できるとします。
この場合、浮動小数点値の結果は、数式s·m·2e-1075の値と等しくなります。int s = ((bits >> 63) == 0) ? 1 : -1; int e = (int)((bits >> 52) & 0x7ffL); long m = (e == 0) ? (bits & 0xfffffffffffffL) << 1 : (bits & 0xfffffffffffffL) | 0x10000000000000L;
このメソッドは、long
引数とまったく同じビット・パターンを持つdouble
NaNを返すことができない可能性があります。 IEEE 754では、2種類のNaN (「シグナルを発生しないNaN」と「シグナルを発生するNaN」)を区別します。 2種類のNaNの違いは、通常Javaでは確認できません。 シグナルを発生するNaNでの算術演算では、シグナルを発生するNaNが、異種でありながら同様のビット・パターンを持つシグナルを発生しないNaNに変わります。 ただし、シグナルを発生するNaNを単にコピーする一部のプロセッサも、この変換も行います。 特に、シグナルを発生するNaNをコピーして、呼出し側のメソッドに返すことで、この変換を実行できます。 したがって、longBitsToDouble
は、シグナルを発生するNaNビット・パターンを持つdouble
を返すことができない可能性があります。 したがって、一部のlong
値では、doubleToRawLongBits(longBitsToDouble(start))
がstart
と等しくならないことがあります。 加えて、どの特定のビット・パターンがシグナルを発生するNaNを表すかは、プラットフォームによって異なります。シグナルを発生しないかシグナルを発生するかにかかわらず、すべてのNaNビット・パターンは上に示すNaNの範囲になければいけません。
bits
- 任意のlong
整数。double
浮動小数点値。public int compareTo(Double anotherDouble)
Double
オブジェクトを数値的に比較します。 このメソッドによる比較は、Java言語の数値比較演算子(<,<=,==,>=,>
)をプリミティブdouble
値に適用した場合とは、次の2点で異なります。
Double.NaN
は自身に等しく、ほかのすべてのdouble
値(Double.POSITIVE_INFINITY
を含む)よりも大きいとみなされる。
0.0d
は-0.0d
より大きいとみなされる。
Double
オブジェクトの自然順序付けで、equalsとの一貫性が確保されます。compareTo
、インタフェースComparable<Double>
anotherDouble
- 比較対象のDouble
。anotherDouble
がこのDouble
と同じ数値の場合は値0
。Double
がanotherDouble
より小さい数値の場合は0
より小さい値。Double
がanotherDouble
より大きい数値の場合は0
より大きい値。public static int compare(double d1, double d2)
double
値を比較します。 返される整数値の符号は、次の呼出しで返される整数の符号と同じになります。
new Double(d1).compareTo(new Double(d2))
d1
- 比較する最初のdouble
d2
- 比較する2番目のdouble
d1
がこのd2
と同じ数値の場合は値0
。d1
がd2
より小さい数値の場合は0
より小さい値。d1
がd2
より大きい数値の場合は0
より大きい値。public static double sum(double a, double b)
double
値を加算します。a
- 第1オペランドb
- 第2オペランドa
とb
の合計BinaryOperator
public static double max(double a, double b)
Math.max
を呼び出した場合と同様に、2つのdouble
値の大きいほうを返します。a
- 第1オペランドb
- 第2オペランドa
とb
のどちらか大きい方BinaryOperator
public static double min(double a, double b)
Math.min
を呼び出した場合と同様に、2つのdouble
値の小さいほうを返します。a
- 第1オペランドb
- 第2オペランドa
とb
のどちらか小さい方。BinaryOperator
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。