Nach this question, peek()
ist faul, heißt es, wir sollten es irgendwie aktivieren. In der Tat, um es zu aktivieren, etwas zu der Konsole mich schon versucht, diese drucken:Wie Streams API Peek() -Funktion verwenden und es funktioniert?
Stream<String> ss = Stream.of("Hi","Hello","Halo","Hacker News");
ss.parallel().peek(System.out::println);
System.out.println("lol"); // I wrote this line to print sth out to terminal to wake peek method up
Aber das funktioniert nicht und der Ausgang ist:
lol
So wie kann ich die peek
funktionieren tatsächlich?
Wenn es keinen Weg zu dem gibt, was ist der Punkt der Verwendung von peek
?
Mit '.count()' rufen Sie 'peek()' auf, bevor Sie die Elemente zählen? –
@ehsan peek in Ihrem Fall ist eine schlechte Wahl, besser ist 'forEach' (und ja, Peek wird ausgeführt, bevor die Zählung zurückgegeben wird). –
Sicher, aber '.count()' ist keine Verschwendung von Ressourcen? –