Java8流API:获取第一个找到的集合元素

Java8流API:获取第一个找到的集合元素,java,java-stream,Java,Java Stream,有一节课 public class Event { public boolean isActive() { //... } //... } 有一个TreeSet events包含数千个元素。我需要有效地查找任何活动的事件,并获取元素 我想使用parallelStream来利用多线程 是否可以使用与只返回找到的元素的anyMatch()相同的方法 boolean hasActiveEvent = events.parallelStream().anyMat

有一节课

public class Event {
    public boolean isActive() {
        //...
    }
    //...
}
有一个
TreeSet events
包含数千个元素。我需要有效地查找任何活动的
事件
,并获取元素

我想使用
parallelStream
来利用多线程

是否可以使用与只返回找到的元素的
anyMatch()
相同的方法

boolean hasActiveEvent = events.parallelStream().anyMatch(event -> event.isActive());

是,使用筛选和查找

Optional<Event> result = events
        .parallelStream()
        .filter(Event::isActive)
        .findAny();
可选结果=事件
.parallelStream()
.filter(事件::isActive)
.findAny();