Java のオプションの ifPresent()

MD Aminul Islam 2023年10月12日
  1. Java のオプション クラス メソッド ifPresent()
  2. Java で ifPresent() メソッドを使用する
Java のオプションの ifPresent()

このチュートリアルでは、Java の ifPresent() という名前の Optional クラス メソッドについて説明します。

Java のオプション クラス メソッド ifPresent()

ifPresent() という名前の Optional クラスは、Class のインスタンスに値が含まれている場合にアクションを実行するために主に使用されるインスタンス メソッドです。 Consumer インターフェイスの実装です。

このメソッドをインポートするには、そのパッケージ java.util をインポートする必要があります。これは、すべての Java プログラムで最も一般的に使用されるパッケージの 1つです。 クラスの名前は Optional です。

この方法のいくつかの例を見てみましょう。

Java で ifPresent() メソッドを使用する

ifPresent() メソッドがどのように機能するかを理解するために、最初に空の Optional を配置し、次に結果の変化を追跡できるように値を含む Optional を配置します。

次のスニペットは、ifPresent() メソッドの例を示しています。 この例では、Consumer を空に設定します。

コード例:

// Importing necessary packages
import java.util.Optional;
import java.util.function.Consumer;

class Main {
  public static void main(String args[]) {
    Consumer<String> MyConsumer =
        value -> System.out.println("\tConsumer Called: [" + value + "]"); // Declaring a Consumer.
    Optional<String> MyOptional = Optional.empty(); // Declaring a Optional
    MyOptional.ifPresent(MyConsumer); // Checking whether the Optional is empty or not.
  }
}

最初に Consumer を宣言し、次に Optional を作成し、Optional.empty() によって空に設定します。 上記のコードを実行した後、Optional が空であるため、何も出力されません。

ここで、Optional に値を設定します。

コード例:

// Importing necessary packages
import java.util.Optional;
import java.util.function.Consumer;

public class Main {
  public static void main(String args[]) {
    Consumer<String> MyConsumer =
        value -> System.out.println("\tConsumer Called: [" + value + "]"); // Declaring a Consumer.
    Optional<String> MyOptional = Optional.of("This is a value."); // Declaring a Optional
    MyOptional.ifPresent(MyConsumer); // Checking whether the Optional is empty or not.
  }
}

ここでは、Optional に文字列値を設定します。 更新されたコードを実行すると、以下の出力が得られます。

出力:

Consumer Called: [This is a value.]
著者: MD Aminul Islam
MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

関連記事 - Java Method