java.lang.Object
java.util.OptionalDouble
public final class OptionalDouble extends Object
double値を含む場合と含まない場合があるコンテナオブジェクト。 値が存在する場合、isPresent()はtrueを返します。 値が存在しない場合、オブジェクトはemptyとみなされ、isPresent()はfalseを返します。 
 orElse() (値がない場合はデフォルト値を返します)およびifPresent() (値が存在する場合にアクションを実行)のような、含まれた値の有無に依存する追加のメソッドが提供されています。
 
これはvalue-basedクラスです。プログラマは、equalのインスタンスを交換可能として扱い、同期にインスタンスを使用しないようにする必要があります。そうしないと、予期しない動作が発生する可能性があります。 たとえば、将来のリリースでは、同期が失敗する可能性があります。
- APIのノート:
- OptionalDoubleは、主に"検索なし"を明示的に必要とするメソッドの戻り型として使用することを意図しています 型が- OptionalDoubleの変数は、それ自体決して- nullであってはなりません。常に- OptionalDoubleインスタンスを指す必要があります。
- 導入されたバージョン:
- 1.8
- 
メソッドのサマリー修飾子と型メソッド説明static OptionalDoubleempty()空のOptionalDoubleインスタンスを返します。boolean他のオブジェクトがこのOptionalDoubleに"等しい"かどうかを示します。double値がある場合は値を返し、そうでない場合はNoSuchElementExceptionをスローします。inthashCode()存在する場合は値のハッシュ・コードを返し、値が存在しない場合は0(zero)を返します。voidifPresent(DoubleConsumer action) 値が存在する場合は、その値で指定されたアクションを実行し、そうでない場合は何もしません。voidifPresentOrElse(DoubleConsumer action, Runnable emptyAction) 値が存在する場合は、指定されたアクションを値とともに実行し、そうでない場合は空のベースのアクションを実行します。booleanisEmpty()値が存在しない場合はtrue、それ以外の場合falseを返します。boolean値が存在する場合はtrueを返し、そうでない場合はfalseを返します。static OptionalDoubleof(double value) 指定された値を記述するOptionalDoubleを返します。doubleorElse(double other) 値が存在する場合は値を返し、そうでない場合はotherを返します。doubleorElseGet(DoubleSupplier supplier) 値が存在する場合は値を返し、そうでない場合は供給関数によって生成された結果を返します。double値がある場合は値を返し、そうでない場合はNoSuchElementExceptionをスローします。<X extends Throwable>
 doubleorElseThrow(Supplier<? extends X> exceptionSupplier) 値が存在する場合は値を返し、そうでない場合は例外を提供する関数によって生成された例外をスローします。stream()値が存在する場合は、その値のみを含む順次DoubleStreamを返し、それ以外の場合は空のDoubleStreamを返します。toString()デバッグに適したこのOptionalDoubleの空でない文字列表現を返します。
- 
メソッドの詳細- 
emptypublic static OptionalDouble empty()空のOptionalDoubleインスタンスを返します。 このOptionalDoubleには値はありません。- APIのノート:
- これは一時的なものですが、OptionalDouble.empty()によって返されたインスタンスと==または!=を比較して、オブジェクトが空であるかどうかをテストしないでください。 シングルトンである保証はありません。 かわりに、isEmpty()またはisPresent()を使用してください。
- 戻り値:
- 空のOptionalDouble。
 
- 
ofpublic static OptionalDouble of(double value) 指定された値を記述するOptionalDoubleを返します。- パラメータ:
- value- 説明する値
- 戻り値:
- 値が存在するOptionalDouble
 
- 
getAsDoublepublic double getAsDouble()値がある場合は値を返し、そうでない場合はNoSuchElementExceptionをスローします。- APIのノート:
- このメソッドの好ましい代替メソッドはorElseThrow()です。
- 戻り値:
- このOptionalDoubleで記述された値
- 例外:
- NoSuchElementException- 値が存在しない場合
 
- 
isPresentpublic boolean isPresent()値が存在する場合はtrueを返し、そうでない場合はfalseを返します。- 戻り値:
- 値が存在する場合はtrue、そうでない場合はfalse
 
- 
isEmptypublic boolean isEmpty()値が存在しない場合はtrue、それ以外の場合falseを返します。- 戻り値:
- 値が存在しない場合はtrue、それ以外の場合はfalse
- 導入されたバージョン:
- 11
 
- 
ifPresentpublic void ifPresent(DoubleConsumer action) 値が存在する場合は、その値で指定されたアクションを実行し、そうでない場合は何もしません。- パラメータ:
- action- 値が存在する場合、実行されるアクション
- 例外:
- NullPointerException- 値が存在し、与えられたアクションが- nullの場合
 
- 
ifPresentOrElsepublic void ifPresentOrElse(DoubleConsumer action, Runnable emptyAction) 値が存在する場合は、指定されたアクションを値とともに実行し、そうでない場合は空のベースのアクションを実行します。- パラメータ:
- action- 値が存在する場合、実行されるアクション
- emptyAction- 値が存在しない場合、実行される空のベースのアクション
- 例外:
- NullPointerException- 値が存在し、指定されたアクションが- nullの場合、または値が存在しない場合、指定された空のアクションは- nullです。
- 導入されたバージョン:
- 9
 
- 
streampublic DoubleStream stream()値が存在する場合は、その値のみを含む順次DoubleStreamを返し、それ以外の場合は空のDoubleStreamを返します。- APIのノート:
- このメソッドは、オプションのdoubleのStreamを現在のdoubleのDoubleStreamに変換するために使用できます:Stream<OptionalDouble> os = .. DoubleStream s = os.flatMapToDouble(OptionalDouble::stream)
- 戻り値:
- オプションの値はDoubleStreamです。
- 導入されたバージョン:
- 9
 
- 
orElsepublic double orElse(double other) 値が存在する場合は値を返し、そうでない場合はotherを返します。- パラメータ:
- other- 値が存在しない場合、返される値
- 戻り値:
- 値(存在する場合)、それ以外の場合はother
 
- 
orElseGetpublic double orElseGet(DoubleSupplier supplier) 値が存在する場合は値を返し、そうでない場合は供給関数によって生成された結果を返します。- パラメータ:
- supplier- 戻される値を生成する供給関数
- 戻り値:
- 存在する場合は値、そうでない場合は供給関数によって生成された結果
- 例外:
- NullPointerException- 値が存在せず、供給関数が- nullの場合
 
- 
orElseThrowpublic double orElseThrow()値がある場合は値を返し、そうでない場合はNoSuchElementExceptionをスローします。- 戻り値:
- このOptionalDoubleで記述された値
- 例外:
- NoSuchElementException- 値が存在しない場合
- 導入されたバージョン:
- 10
 
- 
orElseThrow値が存在する場合は値を返し、そうでない場合は例外を提供する関数によって生成された例外をスローします。- APIのノート:
- 引数リストが空である例外コンストラクタへのメソッド参照をサプライヤとして使用できます。 たとえば、IllegalStateException::newなどです。
- 型パラメータ:
- X- スローされる例外の型
- パラメータ:
- exceptionSupplier- スローされる例外を生成する供給関数
- 戻り値:
- 存在する場合は値
- 例外:
- X- 値が存在しない場合
- NullPointerException- 値が存在せず、例外を提供する関数が- nullの場合
 
- 
equalspublic boolean equals(Object obj) 他のオブジェクトがこのOptionalDoubleに"等しい"かどうかを示します。 他方のオブジェクトは次の場合に同等と見なされます。- それもOptionalDoubleである、および
- 両方のインスタンスに存在する値がない、または
- 存在する値がDouble.compare() == 0によってお互いに等しい。
 
- それも
- 
hashCodepublic int hashCode()存在する場合は値のハッシュ・コードを返し、値が存在しない場合は0(zero)を返します。
- 
toStringpublic String toString()デバッグに適したこのOptionalDoubleの空でない文字列表現を返します。 正確な表示フォーマットは未指定であり、実装とバージョンの間で異なることがあります。
 
-