【发布时间】:2019-02-06 03:32:39
【问题描述】:
我尝试在FilteredList 中使用我的第一个过滤器,但它当然不起作用。
public class ListRemove {
public static void main(String[] args) {
ObservableList<CashBalance> cashBalanceList = FXCollections.observableArrayList();
LocalDate f1 = LocalDate.of(2011, Month.JANUARY, 1);
LocalDate f2 = LocalDate.of(2015, Month.AUGUST, 2);
CashBalance c1 = new CashBalance();
CashBalance c2 = new CashBalance();
c1.setData(f1);
c2.setData(f2);
cashBalanceList.setAll(c1, c2);
FilteredList<CashBalance> filteredList = new FilteredList<CashBalance>(cashBalanceList);
filteredList.stream().filter(p -> p.getData().isAfter(LocalDate.of(2012, Month.JUNE, 2)))
.collect(Collectors.toList());
for (CashBalance l : filteredList) {
System.out.println(l.getData());
}
}
}
应该显示一个日期,但显示两个。我做错了什么?
【问题讨论】:
-
而
CashBalance看起来像? -
filteredList.removeIf(…)?在我看来比使用流更简单。 -
当然可以,但我正在学习过滤器和流:)
标签: java javafx collections filter java-stream