-2
Ich versuche diesen Code zu verstehen. Ich verstehe, dass es eine Set
von ClassA
Objekte zurückgibt, aber was ist die .map(...)
und .collect(...)
und .filter(...)
?verstehen Java 8 Stream
Set<ClassA> lists = event.getLists().stream()
.map(list -> {
try {
return ClassA.valueOf(list);
} catch (IllegalArgumentException e) {
LOG.error("unknown classA list " + list, e);
return null;
}
})
.filter(Objects::nonNull)
.collect(Collectors.toSet());
Sie sind Methoden. Sie können alles über sie in der [API Dokumentation für Stream] lesen (http://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html). – azurefrog
Können Sie Ihre Frage auf etwas beschränken, das in den Javadocs nicht beantwortet wird? –
Sie sind Methoden einer Art, die der prozeduralen Programmierung ziemlich fremd sind, wie die meisten von uns es gelernt haben, also gibt es etwas Neues (und interessantes), das hier gelernt werden kann. Sie lernen nicht die Grundlagen davon, indem Sie Fragen zu Stack Overflow stellen. Sie müssen die Einführungen und Tutorials studieren. Einige existieren im Netz, benutzen Sie Ihre Suchmaschine. –