Я просматриваю граф по его краям и хочу иметь список всех источников и целей. Это то, что у меня есть до сих пор:
public Set<Vertex> getVertices(){
Set<Vertex> vertices = this.edges.stream().map(edge -> edge.getSource()).collect(Collectors.toSet());
vertices.addAll(this.edges.stream().map(edge -> edge.getTarget()).collect(Collectors.toSet()));
return vertices;
}
Есть ли способ получить как источник, так и цель на одном этапе сопоставления/сбора? Что-то вроде (ПСЕВДО-КОД):
edges.stream().collect(edge.getSource()).collect(edge.getTarget())
Или старая добрая Java 7
for ( Edge e : edges ){
vertices.add(e.getSource());
vertices.add(e.getTarget());
}
Привет, Даниэль