工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Java

Java 8 - オプションのクラス

Optional は、null 以外のオブジェクトを格納するために使用されるコンテナー オブジェクトです。オプションのオブジェクトは、値が存在しない null を表すために使用されます。このクラスには、null 値をチェックする代わりに、値を「使用可能」または「使用不可」として処理するコードを容易にするさまざまなユーティリティ メソッドがあります。これは Java 8 で導入され、Guava の Optional に似ています。

クラス宣言

以下は、java.util.Optional の宣言です。 クラス−

public final class Optional<T> extends Object

クラス メソッド

Sr.No. 方法と説明
1

static オプション empty()

空の Optional インスタンスを返します。

2

boolean equals(Object obj)

他のオブジェクトがこの Optional と「等しい」かどうかを示します。

3

オプションの フィルター (述語 述語)

値が存在し、その値が特定の述語と一致する場合は、値を説明する Optional を返します。それ以外の場合は、空の Optional を返します。

4

Optional flatMap(Function> マッパー)

値が存在する場合、提供された Optional-bearing マッピング関数をそれに適用し、その結果を返します。それ以外の場合は、空の Optional を返します。

5

get()

この Optional に値が存在する場合は値を返し、それ以外の場合は NoSuchElementException をスローします。

6

int hashCode()

存在する場合は現在の値のハッシュ コード値を返し、値が存在しない場合は 0 (ゼロ) を返します。

7

void ifPresent(Consumer consumer)

値が存在する場合、その値で指定されたコンシューマーを呼び出します。それ以外の場合は何もしません。

8

ブール値 isPresent()

値が存在する場合は true、そうでない場合は false を返します。

9

オプションの map(Function mapper)

値が存在する場合は、指定されたマッピング関数をそれに適用し、結果が null でない場合は、結果を説明する Optional を返します。

10

static Optional of(T value)

指定された現在の null 以外の値を持つ Optional を返します。

11

static Optional ofNullable(T value)

指定された値を記述する Optional を返します。null でない場合は、空の Optional を返します。

12

T orElse(T その他)

存在する場合は値を返し、そうでない場合はその他を返します。

13

T orElseGet(Supplier other)

存在する場合は値を返し、そうでない場合は other を呼び出し、その呼び出しの結果を返します。

14

T orElseThrow(Supplier exceptionSupplier)

含まれている値が存在する場合はそれを返します。それ以外の場合は、提供されたサプライヤーによって作成される例外をスローします。

15

文字列 toString()

デバッグに適した、この Optional の空でない文字列表現を返します。

このクラスは、次のクラスからメソッドを継承します −

オプションの例

たとえば、C:\> JAVA.

などで任意のエディターを使用して、次の Java プログラムを作成します。

Java8Tester.java

ライブデモ
import java.util.Optional;

public class Java8Tester {

   public static void main(String args[]) {
      Java8Tester java8Tester = new Java8Tester();
      Integer value1 = null;
      Integer value2 = new Integer(10);
		
      //Optional.ofNullable - allows passed parameter to be null.
      Optional<Integer> a = Optional.ofNullable(value1);
		
      //Optional.of - throws NullPointerException if passed parameter is null
      Optional<Integer> b = Optional.of(value2);
      System.out.println(java8Tester.sum(a,b));
   }
	
   public Integer sum(Optional<Integer> a, Optional<Integer> b) {
      //Optional.isPresent - checks the value is present or not
		
      System.out.println("First parameter is present: " + a.isPresent());
      System.out.println("Second parameter is present: " + b.isPresent());
		
      //Optional.orElse - returns the value if present otherwise returns
      //the default value passed.
      Integer value1 = a.orElse(new Integer(0));
		
      //Optional.get - gets the value, value should be present
      Integer value2 = b.get();
      return value1 + value2;
   }
}

結果を確認する

javac を使用してクラスをコンパイルします 次のようにコンパイラ-

C:\JAVA>javac Java8Tester.java

次のように Java8Tester を実行します −

C:\JAVA>java Java8Tester

次の出力が生成されるはずです −

First parameter is present: false
Second parameter is present: true
10

Java

  1. Java 最終キーワード
  2. オペレーターの Java インスタンス
  3. Java 継承
  4. Java ネストされた静的クラス
  5. Java匿名クラス
  6. Java シングルトン クラス
  7. Java リフレクション
  8. Java ObjectOutputStream クラス
  9. Javaジェネリック
  10. Java ファイル クラス
  11. Java 9 - オプション クラスの改善