1. ホーム
  2. java

[解決済み] Java 8 の IntStream をリストに変換するにはどうすればよいですか?

2022-03-15 23:30:36

質問

のドキュメントを見ています。 IntStream というのがあって toArray メソッドに直接移動する方法はありません。 List<Integer>

を変換する方法があるはずです。 StreamList ?

解決方法は?

IntStream::boxed

IntStream::boxed IntStream Stream<Integer> を作成し、それを collect を、「Space」に変換します。 List :

theIntStream.boxed().collect(Collectors.toList())

boxed メソッドは int のプリミティブ値です。 IntStream のストリームに変換します。 Integer オブジェクトになります。という単語は "ボクシング" intInteger の変換処理を行います。参照 オラクルチュートリアル .

Java 16 以降

Java 16 では、より短い toList メソッドを使用します。を生成します。 修正不可能なリスト . 議論された こちら .

theIntStream.boxed().toList()