【发布时间】:2015-11-04 04:59:58
【问题描述】:
任何人都知道以下 java 流操作的 Scala 等效项 - findFirst()
lst.stream()
.filter(x -> x > 5)
.findFirst()
谢谢
【问题讨论】:
-
lst.filter(_ > 5).head -
在 java 流中,操作是交错的。 IE。过滤在大于 5 的第一个元素处停止。但在 Scala 普通列表中,它将首先过滤进入列表以创建所有元素的子列表并占据头部。我想要确切的 java 流效果。
-
如果你想要惰性过滤器,请使用
withFilter或list.view.filter(稍后也适用于map和其他几个常见操作)。如果您需要找到第一个匹配的元素,请使用find。
标签: scala java-8 java-stream