是否有一个方法可以找到具有条件的第一个匹配元素在Java 8中的列表中,如C#Enumerable#First和Scala List#find?

时间:2014-04-09 19:02:32

标签: java java-8

与C#LINQ Enumerable#First一样使用委托方法 和Scala List#find方法, 在Java8中, 有没有一种方法可以在列表中找到第一个匹配的元素?

2 个答案:

答案 0 :(得分:6)

是的,使用Stream#findFirst()方法:

List<String> list = Arrays.asList("a", "ab", "bc", "abc");
String firstMatch = list.stream().filter(s -> s.length() == 2).findFirst().get();

答案 1 :(得分:6)

list.stream().filter(predicate).findFirst();