我有一个java
代码,该代码提供items
中的对象。它基于maxNumber限制它们:
items.stream()
.map(this::myMapper)
.filter(item -> item != null).limit(maxNumber)
.collect(Collectors.toList());
它正常工作,但问题是-当maxNumber == 0时,有没有一种跳过限制的方法?我知道我可以做到:
if (maxNumber == 0) {
items.stream()
.map(this::myMapper)
.filter(item -> item != null)
.collect(Collectors.toList());
} else {
items.stream()
.map(this::myMapper)
.filter(item -> item != null).limit(maxNumber)
.collect(Collectors.toList());
}
但是也许有更好的方法,您想到什么了吗?谢谢!
.limit(maxNumber==0?Long.MAX_VALUE:maxNumber)
将完成技巧吗?