2016-09-19 3 views
0

内のすべての要素の文字列表現を取得しますストリームを呼び出して、はどのように1.8</p> <p>私はこのコードを持っているEclipseとJavaの-versionを使用したJava 8ストリーム

System.out.println("Sunk ships => " + this.opponent.sunkShips()); 

しかし、これはストリームオブジェクトを印刷するだけですが、どうすればストリーム内のすべてのアイテムにアクセスし、それぞれを出力できますか?

+3

を::

System.out.println("Sunk ships => "); this.opponent.sunkShips().forEach(System.out::println); 

をそれとも、ストリームからリストを生成し、それを印刷することができます// stackoverflowの.com/questions/14830313/java-util-stream-in-java-stream-in-java-8からのリストの検索 – NemanjaT

+2

この質問のより良いタイトルを考え出すことができますか? 「ストリーム内のすべての要素を印刷する方法」のようなものです。ありがとう – OlegTheCat

+0

よろしくお願いします。 –

答えて

4

あなたはストリームの要素を反復処理し、それらを印刷することができます:httpを助けるかもしれない

System.out.println("Sunk ships => " + this.opponent.sunkShips().collect(Collectors.toList()); 
+0

ありがとう!ストリームに0以上の項目がある場合にのみストリームを印刷したい場合はどうすればよいですか? Javaのストリーム/フィルタでそれを行う良い方法はありますか? –

+1

@AlexMillsストリームが空であるかどうかを調べるには、ストリームを閉じるための 'findAny()'や 'findFirst()'などの端末操作を使わなければならないので、リスト発送= this.opponent.sunkShips()。collect(Collectors.toList(); ')空でない場合は – Eran

+0

cool、toList()が実装されているかどうかを確認する必要があります。 –

関連する問題