JavaのOptionalクラスを使用してnullの可能性のある値を処理するにはどうすればよいですか?

WBOY
リリース: 2023-08-02 11:13:15
オリジナル
1064 人が閲覧しました

Java の Optional クラスを使用して、null の可能性のある値を処理するにはどうすればよいですか?

はじめに:
プログラミング プロセスでは、空の可能性のある値を処理する必要がある状況によく遭遇します。 null 値を処理する方法は数多くありますが、一般的な方法の 1 つは、Java の Optional クラスを使用することです。 Optional クラスは Java 8 で導入された新機能で、null 値の状況を効果的に処理し、より安全で洗練されたコード実装を提供するように設計されています。この記事では、Java で Optional クラスを使用して null 値の可能性を処理する方法を紹介し、コード例を示して説明します。

  1. オプション クラスとは何ですか?
    Optional クラスは、特定の型の値を保持できる、または値が存在しないことを示すことができるコンテナ オブジェクトです。この値を処理および使用するための実用的な方法が多数提供されます。 Optional クラスは、NULL ポインター例外の発生を減らし、コードの読みやすさと保守性を向上させるように設計されています。
  2. Optional クラスの基本的な使用法
    Optional クラスを使用するための基本的な手順は次のとおりです。
    (1) of() メソッドを使用して、Optional オブジェクトを作成し、値を渡します。空の場合があります;
    ( 2) isPresent() メソッドを使用して、Optional オブジェクトに値があるかどうかを確認します;
    (3) get() メソッドを使用して、Optional オブジェクトの値を取得します。 ## (4) orElse() メソッドを使用してデフォルト値を設定します。Optional オブジェクトが空の場合にフォールバック値を提供します。
ここに、Optional クラスを使用して空の可能性のある文字列値を処理する方法を示す簡単な例を示します。

import java.util.Optional;

public class OptionalExample {
    public static void main(String[] args) {
        String text = null;

        Optional<String> optional = Optional.ofNullable(text);

        if (optional.isPresent()) {
            String result = optional.get();
            System.out.println("Value exists: " + result);
        } else {
            System.out.println("Value does not exist");
        }

        String defaultValue = optional.orElse("Default Value");
        System.out.println("Value: " + defaultValue);
    }
}
ログイン後にコピー

上の例では、最初にオプションの空の文字列を作成します。テキストは、ofNullable() メソッドを通じて Optional オブジェクトにカプセル化されます。次に、isPresent() メソッドを使用して、Optional オブジェクトに値があるかどうかを確認し、値がある場合は、get() メソッドを通じて値を取得し、出力します。 Optional オブジェクトに値がない場合は、「値が存在しません」と表示されます。最後に、orElse() メソッドを使用してデフォルト値を設定します。デフォルト値は、Optional オブジェクトが空の場合に返されます。

    Optional クラスのその他の一般的なメソッド
  1. 上記の例の isPresent()、get()、および orElse() メソッドに加えて、Optional クラスには他の一般的に使用されるメソッドもいくつか提供されています表示:
(1) ifPresent(Consumer Consumer): Optional オブジェクトに値がある場合、コンシューマで指定された操作を実行します;

( 2) orElseGet(Suppliersupplier): Optional オブジェクトが空の場合、サプライヤーが提供するメソッドを通じて代替値を取得します;
(3) orElseThrow(SupplierExceptionSupplier): If Optional オブジェクトが空の場合は、ExceptionSupplier によって提供される例外をスローします;
(4) map(Function マッパー): Optional オブジェクトに値がある場合、その値はメソッドを通じて処理されます。マッパーによって提供され、新しいものが返されます。オプション オブジェクト;
(5) flatMap(Function> マッパー): Optional オブジェクトに値がある場合、その値が処理されますマッパーによって提供されるメソッドを通じて、新しい Optional オブジェクトが返されます。

次の例は、map() メソッドを使用して Optional オブジェクトの値を処理する方法を示しています。

import java.util.Optional;

public class OptionalExample {
    public static void main(String[] args) {
        String text = "Hello World";

        Optional<String> optional = Optional.ofNullable(text);

        Optional<String> transformed = optional.map(s -> s.toUpperCase());

        transformed.ifPresent(s -> System.out.println("Transformed Value: " + s));
    }
}
ログイン後にコピー

上の例では、最初に場合によっては空の String テキストを取得し、ofNullable() メソッドを通じてそれを Optional オブジェクトにカプセル化します。次に、map() メソッドを使用して Optional オブジェクトの値を処理し、それを大文字に変換して、変換された新しい Optional オブジェクトに格納します。最後に、ifPresent() メソッドを使用して、変換されたオブジェクトに値があるかどうかを判断し、それを出力します。

概要:

この記事の導入部を通じて、Java の Optional クラスが空の可能性のある値をどのように処理するかを学びました。 Optional クラスを使用すると、Null ポインター例外の発生を効果的に減らし、コードの可読性と保守性を向上させることができます。実際のプログラミングでは、Optional クラスのさまざまなメソッドを駆使し、考えられる null 値を合理的に処理して、コードの品質と安定性を向上させる必要があります。

参考資料:

1.「Java 8 Optional の使用の詳細な説明」: https://www.cnblogs.com/wang-meng/p/7003935.html
2. 「Java 8 Optional」クラスの詳細説明: https://www.jianshu.com/p/831b6ff0c284

以上がJavaのOptionalクラスを使用してnullの可能性のある値を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート