如何在java中查询类的列表

时间:2014-03-24 18:34:25

标签: java linq list

我有一个名为class1的类,它有两个成员,member1和member2。我想基于member1查询class1的ArrayList。我们可以使用linq在C#中轻松完成此操作。我发现在java中我们可以使用类似于以下内容的库:

Is there a Java equivalent for LINQ?

但是我没有时间学习这个库,它的库中有一些jar文件,我不知道应该导入哪一个来使用我需要的功能。这似乎需要时间。有人可以给我一个编程提示,一个可以用该查询替换的等效程序。看来我不能想出linq的盒子。有没有办法在不使用这些类型的库的情况下进行查询?

1 个答案:

答案 0 :(得分:2)

LINQ可以做很多事情,没有一个替代方案。 Java没有LINQ库,它是.NET的东西。您可以使用流和函数编程在Java 8中执行许多常见的LINQ操作,例如:

Class1[] arr = ...
List<Class1> filteredList = stream(arr).filter(e -> e.member1 == val).collect(toList());

这会生成member1等于val的元素列表。

有关更多示例,我将参考此程序包:http://download.java.net/jdk8/docs/api/java/util/stream/package-summary.html

如果Java 8不可用,那么您必须使用简单的for循环(或下载库来为您执行此操作)。