我一直在写"排序和聚合"使这个~100MB数据集有效地可搜索的方法,但代码有点长。
对象是简单的类,如
class item {
public int type = 1;
public int damage = 4;
}
我所做的基本上就是上课,我可以说items.type(1).damage(4).getItem();
Java是否有任何类可以将对象转换为可以类似方式搜索的内容?
我一直在关注Java Collections and Entities,我写的是一个巨大的ArrayList<Item>
和几个HashMap<Item>
答案 0 :(得分:2)
Java 8可能适合:
Item item = items.stream()
.filter((it) -> it.type == 1)
.filter((it) -> it.damage == 4)
.findFirst().orElse(null);
P.S。在你的情况下,.parallel()
可能有助于提高速度(分而治之)。