【发布时间】:2015-12-15 06:22:03
【问题描述】:
让我们看看这个示例 C# 代码:
List<int> numbers = new List<int>() { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
int numCount = numbers.Where(n => n < 3 || n > 7).Count();
我对 Java 中最接近的等价物很感兴趣,显然不需要编写花哨的 for/foreach 循环来迭代集合。
据我所知,Java 中没有确切的 linq equivalnet,但是我还是 Java 编程的初学者,有什么可以推荐给我的吗?我实际上正在寻找最紧凑和优雅的方式来在 Java 中实现相同的结果
[添加] 所以,谢谢大家的回复。但是,我需要在 Android 上使用它,但似乎我不能。有什么解决办法吗?
(对不起,它是重复的)
[添加] 有人试过这个吗? http://sourceforge.net/projects/streamsupport/
【问题讨论】:
-
@caesay 如果您向下滚动答案,您会发现
Java 8 streams将在这里完成工作 -
@Sybren:我就是答案之一。我建议一个重复的问题。这里的问题是“我如何根据谓词过滤数组”,这也是我发布的链接的问题。
-
@是的,答案也在您的链接中,但也在我的链接中,所以我不明白您为什么不同意我的副本。