스트림의 기준과 일치하는 첫 번째 요소를 얻는 방법은 무엇입니까? 나는 이것을 시도했지만 작동하지 않습니다
this.stops.stream().filter(Stop s-> s.getStation().getName().equals(name));
해당 기준이 작동하지 않고 필터 메서드가 Stop이 아닌 다른 클래스에서 호출됩니다.
public class Train {
private final String name;
private final SortedSet<Stop> stops;
public Train(String name) {
this.name = name;
this.stops = new TreeSet<Stop>();
}
public void addStop(Stop stop) {
this.stops.add(stop);
}
public Stop getFirstStation() {
return this.getStops().first();
}
public Stop getLastStation() {
return this.getStops().last();
}
public SortedSet<Stop> getStops() {
return stops;
}
public SortedSet<Stop> getStopsAfter(String name) {
// return this.stops.subSet(, toElement);
return null;
}
}
import java.util.ArrayList;
import java.util.List;
public class Station {
private final String name;
private final List<Stop> stops;
public Station(String name) {
this.name = name;
this.stops = new ArrayList<Stop>();
}
public String getName() {
return name;
}
}