プレディケートを使用してパターンからストリームを作成する方法


まず、java.util.stream.Streamクラスを使用してストリームを作成します。次に、パターンとマッチする要素を抽出するためにプレディケートを使用します。

以下に、具体的なコード例を示します。

import java.util.Arrays;
import java.util.List;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
    public static void main(String[] args) {
        List<String> words = Arrays.asList("apple", "banana", "cat", "dog", "elephant");
        // パターンとマッチする要素を抽出するプレディケート
        Pattern pattern = Pattern.compile("a.*");
        Stream<String> matchingWords = words.stream().filter(pattern.asPredicate());
        // 結果を出力
        matchingWords.forEach(System.out::println);
    }
}

上記の例では、文字列のリストからパターン "a.*" にマッチする要素を抽出しています。Pattern.asPredicate() メソッドを使用して、パターンをプレディケートに変換し、filter メソッドを使用してストリームの要素をフィルタリングしています。

実行結果は次のようになります:

apple

この例では、"apple"という要素がパターンにマッチするため、結果として "apple" が出力されます。

以上が、パターンからプレディケートを使用してストリームを作成する方法の一例です。これにより、指定した条件に基づいてストリームの要素を抽出することができます。