我有一个数据库表,我想过滤,然后按反向(降序)顺序排序。我如何在类似于此的Speedment流中表达:
films.stream()
.filter(Film.LENGTH.greaterThan(120))
.sorted(... some expression ...)
.skip(100)
.limit(50)
.collect(Collectors.toList());
我想通过Speedment优化我的SQL查询,因此我不能使用匿名lambda。
答案 0 :(得分:3)
对要使用的字段使用内置比较器,并应用Comparator::reversed操作,如下所示:
films.stream()
.filter(Film.LENGTH.greaterThan(120))
.sorted(Film.LENGTH.comparator().reversed()) // <--- Here
.skip(100)
.limit(50)
.collect(Collectors.toList());