gpt4 book ai didi

java - Java 中使用自定义对象的属性(字段)快速搜索自定义对象的数据结构

转载 作者:行者123 更新时间:2023-12-01 16:51:24 24 4
gpt4 key购买 nike

我有抽象父类(super class)和一些子类。我的问题是如何保留这些类的对象的最佳方法,以便我可以使用所有不同的参数轻松找到它们。

例如,如果我想使用resourceCode进行查找(每个对象都有唯一的资源代码),我可以使用带有键值resourceCode的HashMap。但是,如果我想查找类型,会发生什么 - 有许多具有相同类型的游戏,所以我将获得所有这些游戏。我的第一个想法是使用这些对象的 ArrayList,但是如果我们有 1 000 000 个游戏(大约 1 000 000 次操作),是不是太慢了。

我的另一个想法是建立一个带有产品代码键值的哈希表。搜索的复杂性是恒定的。之后,我创建了许多哈希集,因为我在类中有字段,并且对于每个字段,我获取了对象的产品代码/产品代码,这些对象位于该特定字段下的哈希集中(例如游戏发起人)。有了这些独特的代码,我可以从哈希表中获取我想要的一切。这是一个好主意吗?看起来存储日期需要很大的空间,但速度会很快。

所以我的问题是我应该使用什么数据结构,以便我可以实现自定义对象的快速查找,按其属性(字段)搜索

请见附件:Classes Example

提前谢谢您。

斯特凡·斯特凡诺夫

最佳答案

您可以使用SortedOrdered 数据结构来优化搜索复杂性。您可以为自定义数据引入自己的搜索索引。

但最好使用数据库或搜索引擎。看看Elasticsearch , Apache Solr , PostgreSQL

关于java - Java 中使用自定义对象的属性(字段)快速搜索自定义对象的数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39467890/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com