【发布时间】:2015-04-11 04:53:12
【问题描述】:
我一直在编写一种“排序和聚合”方法,以使这个约 100MB 的数据集可有效搜索,但代码有点长。
对象是简单的类,如
class item {
public int type = 1;
public int damage = 4;
}
我所做的基本上是创建一个我可以说items.type(1).damage(4).getItem();的类
Java 是否有任何类可以以类似的方式将对象转换为可搜索的对象?
我一直在研究 Java 集合和实体,其中我写的是一个巨大的 ArrayList<Item> 和几个 HashMap<Item>
【问题讨论】:
-
立即想到的问题:对于 1 亿条记录的数据集,您为什么不想使用真实的、经过验证的数据库?感觉就像你在重新发明轮子。有很多免费的、开源的、相当容易使用的系统。 PostgreSQL 恰好是我目前最喜欢的,但现在你甚至不必使用关系数据库。
-
猜猜看,这和我的世界有关吗?
-
@immibis Hah :P 不,我只是在使用基本的 java 和 Graphics2D 来试验游戏设计。
-
这可能比数据大小更相关;真的不多。问题:使用简单线性搜索的性能如何?这是您在尝试优化之前应该检查的内容。如果这不好,那么优化一个参数的搜索呢?这可以通过某种桶结构来完成,它可以进入哈希映射(将参数映射到桶列表)。您只需对存储桶本身进行线性搜索。
标签: java