Java Stream通过findFirst()查找满足条件的一条数据
在Java中,你可以使用Stream API的findFirst()
方法来寻找流中满足某个条件的第一个元素。如果流中有多个元素满足条件,findFirst()
会返回第一个匹配的元素。
以下是一个使用findFirst()
的示例代码:
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
public class FindFirstExample {
public static void main(String[] args) {
List<String> items = Arrays.asList("apple", "banana", "cherry", "date");
// 找到第一个以'b'开头的元素
Optional<String> firstItem = items.stream()
.filter(item -> item.startsWith("b"))
.findFirst();
// 输出找到的元素,如果存在的话
firstItem.ifPresent(System.out::println);
}
}
在这个例子中,我们创建了一个包含水果名称的列表。然后我们使用stream()
方法来创建一个流,接着使用filter()
方法来只保留那些以'b'开头的元素。最后,我们调用findFirst()
来找到这些元素中的第一个。如果找到了这样的元素,Optional
对象会包含这个元素,我们可以用ifPresent()
方法来输出它。如果没有找到,Optional
对象将是空的。
评论已关闭