3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

JavaのflatMap()とは

Last updated at Posted at 2023-07-11

flatMap() は、Javaのストリーム操作(Stream API)で使用される中間操作の一つです。
flatMap() メソッドは、ストリーム内の各要素を別のストリームに変換し、それらのストリームをマージして単一のストリームにするために使用されます。

flatMap() メソッドは、各要素を複数の要素からなる新しいストリームに変換するために使用されるようです。
各要素に対してマッピング関数を適用し、その結果をフラット化して単一のストリームに結合します。

サンプル↓

List<List<Integer>> nestedList = Arrays.asList(
    Arrays.asList(1, 2, 3),
    Arrays.asList(4, 5, 6),
    Arrays.asList(7, 8, 9)
);

List<Integer> flattenedList = nestedList.stream()
   .flatMap(Collection::stream)
   .collect(Collectors.toList());

System.out.println(flattenedList);

この例では、入れ子になった整数のリスト nestedList があります。flatMap(Collection::stream) を使用して、各リストをフラット化し、単一の整数のリスト flattenedList を生成しています。

出力結果↓

[1, 2, 3, 4, 5, 6, 7, 8, 9]

flatMap() を使用することで、ネストされたリストの各要素が個別の要素としてマージされ、フラット化された単一のストリームになります。

flatMap() は、要素をフラット化するための便利な方法です。ネストされたリストやマップなど、要素が入れ子になっている場合に特に有用です。

難しい〜

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?