- フィルタリング: Streamのfilterメソッドを使用すると、指定した条件に一致する要素のみを抽出できます。例えば、整数のリストから偶数のみを抽出する場合、以下のようなコードを使用します。
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
List<Integer> evenNumbers = numbers.stream()
.filter(n -> n % 2 == 0)
.collect(Collectors.toList());
- マッピング: Streamのmapメソッドを使用すると、要素を別の形式に変換できます。例えば、文字列のリストから各要素の長さを抽出する場合、以下のようなコードを使用します。
List<String> words = Arrays.asList("apple", "banana", "cherry");
List<Integer> wordLengths = words.stream()
.map(String::length)
.collect(Collectors.toList());
- コレクションへの変換: Streamのcollectメソッドを使用すると、Streamの要素をコレクションに変換できます。例えば、整数のStreamを配列に変換する場合、以下のようなコードを使用します。
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
Integer[] numberArray = numbers.stream()
.toArray(Integer[]::new);
これらの例では、Streamのメソッドチェーンを使用して複数の操作を組み合わせています。Stream APIを活用することで、コードをよりシンプルで効率的に記述することができます。
この記事では、Java Streamを使用して要素のフィルタリング、マッピング、およびコレクションへの変換を行う方法を詳しく説明しました。これらの技術を使うことで、Javaプログラムのパフォーマンスを向上させることができます。