您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用Java 8 JDK将Iterable转换为Stream

使用Java 8 JDK将Iterable转换为Stream

一个spliteratorUnkNownSize直接使用更好的答案,这既简单又得到更好的结果。 Iterable有一个spliterator()方法,所以你应该使用该方法获取分离器。在最坏的情况下,它是相同的代码认实现使用spliteratorUnkNownSize),但是在更常见的情况下,你Iterable已经是一个集合,你将获得更好的分离器,从而获得更好的流性能(甚至可能具有良好的并行性)。它的代码也更少:

StreamSupport.stream(iterable.spliterator(), false)
             .filter(...)
             .moreStreamOps(...);

如你所见,从中获取Iterable(也请参见此问题)并不是很痛苦。

java 2022/1/1 18:15:35 有661人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶