Ich habe einen Stream, der die gesamte Verarbeitung in peek()
Methoden durchführt. Ich brauche kein Ergebnis vom Stream, aber ich brauche eine Terminaloperation, damit die Verarbeitung stattfinden kann. Natürlich kann ich den Stream mit count()
(oder einer anderen Operation) beenden, aber das wäre irreführend, als ob ich ein Ergebnis aus der Stream-Beendigung benötige. Was ist die richtige Methode, um den Stream in einem solchen Fall zu beenden?
Hier ist der Code für die Referenz:
%Vor%Wenn es nur die "Irreführung" ist, die dich ärgert, versuche dies:
%Vor%Ich denke, das würde jede Zweideutigkeit beseitigen: Die Methode hat einen klaren Zweck und der Ruf ist auch klar. Bei Verwendung wie folgt,
%Vor%Die Hauptmethode wird gedruckt
%Vor% Dies erfordert, dass stream
nicht geschlossen ist und nicht bearbeitet wurde, oder es wird IllegalStateException
geworfen.
Sie könnten allMatch () als Terminaloperation verwenden, da diese nicht für alle Elemente ausgewertet werden muss.
Tags und Links java java-stream