ホームページ Java &#&チュートリアル Java 8 のオプション クラス: filter() メソッドを使用して null の可能性のある値をフィルタリングする方法

Java 8 のオプション クラス: filter() メソッドを使用して null の可能性のある値をフィルタリングする方法

Aug 01, 2023 pm 05:27 PM
filter optional 価値

Java 8 のオプション クラス: filter() メソッドを使用して空の可能性のある値をフィルタリングする方法

Java 8 では、Optional クラスは、可能性のある null をより適切に処理できる非常に便利なツールです。 value を指定すると、NullPointerException の発生が回避されます。 Optional クラスには、潜在的な null 値を操作するためのメソッドが多数用意されています。重要なメソッドの 1 つは filter() です。

filter() メソッドの機能は、Optional オブジェクトの値が存在し、指定された条件を満たしている場合は、Optional オブジェクト自体を返します。値が存在しない場合、または条件が満たされていない場合は、空の値が返されるオプションのオブジェクト。

次のコード例は、filter() メソッドを使用して空の可能性のある値をフィルターする方法を示しています。

import java.util.Optional;

public class OptionalFilterExample {

    public static void main(String[] args) {
        String name = "John Doe";
        Optional<String> nameOptional = Optional.ofNullable(name);

        // 使用filter()方法过滤值为空的Optional对象
        Optional<String> filteredOptional = nameOptional.filter(n -> n.length() > 5);

        if (filteredOptional.isPresent()) {
            System.out.println("Name is longer than 5 characters");
        } else {
            System.out.println("Name is either null or shorter than 5 characters");
        }
    }
}
ログイン後にコピー

上記の例では、最初に空ではないオプションのオブジェクト名オプション、その値を作成します。それは「ジョン・ドゥ」です。次に、filter() メソッドを使用して、条件 n -> n.length() > 5 を渡します。この条件は、文字列の長さが 5 より大きいかどうかをチェックします。条件が満たされる場合、filter() メソッドは同じ値を含む Optional オブジェクトを返し、それ以外の場合は空の Optional オブジェクトを返します。

最後に、isPresent() メソッドを使用して、フィルターされた Optional オブジェクトに値が含まれているかどうかを確認し、結果に基づいて対応する情報を出力します。

実際の開発では、空の可能性のある値をフィルターで除外する必要があることがよくあります。 filter() メソッドを使用すると、このタスクを簡潔に実行できます。次に、リスト内の 10 を超える整数をフィルタリングして除外する方法を示す別の例を示します。

import java.util.ArrayList;
import java.util.List;
import java.util.Optional;

public class OptionalFilterListExample {

    public static void main(String[] args) {
        List<Integer> numbers = new ArrayList<>();
        numbers.add(5);
        numbers.add(15);
        numbers.add(8);
        numbers.add(20);

        List<Integer> filteredNumbers = new ArrayList<>();

        for (Integer number : numbers) {
            Optional<Integer> optionalNumber = Optional.ofNullable(number);
            optionalNumber.filter(n -> n > 10).ifPresent(filteredNumbers::add);
        }

        System.out.println(filteredNumbers);
    }
}
ログイン後にコピー

上の例では、最初に、いくつかの数値を含む整数リスト数値を作成しました。次に、for-each ループを使用してリスト内の各要素を反復処理し、それらを Optional オブジェクトにラップします。

次に、filter() メソッドを使用して 10 より大きい数値をフィルターで除外し、ifPresent() メソッドを使用してフィルターされた数値を filteredNumbers リストに追加します。

最後に、フィルタリングされたすべての数値を含む filteredNumbers リストを出力します。

Optional クラスの filter() メソッドを使用すると、考えられる null 値をより簡潔にフィルタリングでき、面倒な null チェックや NullPointerException につながる可能性のある状況を回避できます。これにより、コードがより堅牢になり、読みやすくなります。コードの品質と開発効率を向上させるために、開発では Optional クラスのさまざまなメソッドを活用することをお勧めします。

以上がJava 8 のオプション クラス: filter() メソッドを使用して null の可能性のある値をフィルタリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MD5ハッシュ値とは何ですか? MD5ハッシュ値とは何ですか? Feb 18, 2024 pm 08:50 PM

MD5値とは何ですか?コンピューター サイエンスでは、MD5 (MessageDigestAlgorithm5) は、メッセージのダイジェストまたは暗号化に使用される一般的に使用されるハッシュ関数です。通常は 32 ビットの 16 進数で表される、固定長の 128 ビットの 2 進数を生成します。 MD5 アルゴリズムは、1991 年に Ronald Rivest によって設計されました。 MD5 アルゴリズムは、暗号化の分野ではもはや安全ではないと考えられていますが、データ整合性検証やファイル検証では依然として広く使用されています。

「[Vue 警告]: フィルターを解決できませんでした」エラーを解決する方法 「[Vue 警告]: フィルターを解決できませんでした」エラーを解決する方法 Aug 19, 2023 pm 03:33 PM

「[Vuewarn]:Failedtoresolvefilter」エラーを解決する方法 Vue を使用した開発プロセス中に、「[Vuewarn]:Failedtoresolvefilter」というエラー メッセージが表示されることがあります。このエラー メッセージは通常、テンプレートで未定義のフィルターを使用したときに発生します。この記事では、このエラーを解決する方法を説明し、対応するコード例を示します。 Vue を使用しているとき

Java で一般的に使用される Optional メソッドは何ですか? Java で一般的に使用される Optional メソッドは何ですか? May 09, 2023 am 11:34 AM

はじめに Java のオプションはコンテナ オブジェクトであり、null 以外の値を含めることも、空にすることもできます。その主な目的は、コードを記述するときに null ポインター例外を回避することです。 1. Optional オブジェクトの作成 of() メソッドを使用して、null 以外の値を含む Optional オブジェクトを作成できます (例: Optionaloptional=Optional.of("value"))。 ; ofNullable() メソッドを通じて作成することもできます。null 値を含む可能性のある Optional オブジェクト (例: Optionaloptional=Optiona)

Javaのオプション関数を使用してnull値の場合を処理する方法 Javaのオプション関数を使用してnull値の場合を処理する方法 Oct 20, 2023 am 10:06 AM

Java で Optional 関数を使用して null 値を処理する方法 Java プログラミングでは、null 値を処理する場面によく遭遇します。 Null ポインター例外はよくあるエラーですが、この状況を回避するために、Java8 では null 値の状況を処理する Optional クラスが導入されました。 Optional クラスは、空でない値を含めることができる、または値を含めないコンテナー クラスです。 Optional クラスを使用すると、null 値の状況をより適切に処理し、null ポインター例外を回避できます。下

Springbootにおけるフィルタの原理と登録方法は何ですか Springbootにおけるフィルタの原理と登録方法は何ですか May 11, 2023 pm 08:28 PM

1. フィルター まず、Web サーバーのフィルターの場所を確認します。フィルタは前後につながったチェーンであり、前の処理が完了すると次のフィルタに渡されて処理が行われます。 1.1フィルター インターフェイス定義 publicinterfaceFilter{//初期化メソッド。ライフサイクル全体で 1 回だけ実行されます。 //initメソッドが正常に実行されるまで(例外スローなどの失敗)、フィルタリングサービスは提供できません。 // パラメータ FilterConfig は、初期化パラメータを取得するために使用されます publicvoidinit(FilterConfigfilterConfig)throwsServletException;//

PHP 値分析: PHP における値の概念と適用の詳細な説明 PHP 値分析: PHP における値の概念と適用の詳細な説明 Mar 21, 2024 pm 09:06 PM

PHP 値分析: PHP における値の概念と応用の詳細な説明 PHP プログラミングにおいて、値は非常に基本的かつ重要な概念です。この記事では、PHP の値の概念と、実際のプログラミングにおけるその応用について詳しく説明します。基本的な値の型、変数、配列、オブジェクト、定数などを詳細に分析し、読者が PHP での値をよりよく理解し、使用できるように、具体的なコード例を提供します。基本的な値の型 PHP では、最も一般的な基本的な値の型には、整数、浮動小数点、文字列、ブール値、および null が含まれます。これらの基本的な

Javaでフィルタリングする方法 Javaでフィルタリングする方法 Apr 18, 2023 pm 11:04 PM

注 1. Lambda パラメータが true 値を生成する場合、フィルター (ブール値の結果を生成できる Lambda) は要素を生成します; 2. false が生成されると、この要素は使用されなくなります。リスト コレクションを作成する例: ListstringCollection=newArrayList();stringCollection.add("ddd2");stringCollection.add("aaa2");stringCollection.add("bbb1");stringC

CSS のぼかしプロパティの詳細な説明: filter および backdrop-filter CSS のぼかしプロパティの詳細な説明: filter および backdrop-filter Oct 20, 2023 pm 04:48 PM

CSS ファジー プロパティの詳細な説明: filter および background-filter はじめに: Web ページをデザインするとき、ページの視覚的な魅力を高めるためにいくつかの特殊効果が必要になることがよくあります。ブラー効果は一般的な特殊効果の 1 つです。 CSS には、filter と background-filter という 2 つのぼかし属性が用意されており、それぞれ要素のコンテンツと背景のコンテンツをぼかすために使用されます。この記事では、これら 2 つのプロパティについて詳しく説明し、具体的なコード例をいくつか示します。 1.フィルター

See all articles