use*_*560 3 java smalltalk java-8
我detect在Java 8中搜索该方法.我曾经在Smalltalk中使用它,但Java似乎没有它.Smalltalk的detect方法根据表达式的结果找到第一个元素.例如:
Listnumbers.detect[number->number>4]
Run Code Online (Sandbox Code Playgroud)
如果存在大于4的元素,则返回该元素.
在java 8中,您可以使用流API:
Collection<T> collection = ... //
Optional<T> optionalFirst = collection.stream()
.filter(e -> /* some predicate */)
.findFirst();
Run Code Online (Sandbox Code Playgroud)
这将找到集合中第一个满足谓词的元素(如果存在).