gpt4 book ai didi

java - 不确定选择哪种类型的列表?

转载 作者:行者123 更新时间:2023-12-01 17:31:49 25 4
gpt4 key购买 nike

我对 Java(但正在学习)数据结构没有那么丰富的经验,并且不确定要选择什么类型的列表。我的问题是我正在创建一个套接字服务,该服务获取数据并根据列表进行检查,如果不存在,则它将传递数据进行处理并将数据 ID 号添加到列表中,以便相同的数据不会再次处理(处理数据的服务不知道是否存在重复工作,因此这充当过滤器)。

我读到 arraylist 很快,但我刚刚意识到它要求我之前知道列表的大小,但我不知道,因为它不断增长(它肯定会达到数十亿个项目)。我以为我会只使用老式整数[],但我想我会问是否有更好的方法。

与我的过程相关的具体细节很少,我的数据本身很复杂,但为了查找,我将数据转换为哈希码并进行检查,因此我的所有数据都是整数(正/负)并且提供服务客户端请求是通过可运行的来完成的,所以如果我可以做一些事情来使数据更有效,我可以这样做(我在想,因为它的所有整数可能会经常对它进行排序以使循环更快?)。 integer[] 足够好还是有更好的?

最佳答案

it will surely hit several billion items

我非常怀疑这一点。这将是千兆字节的数据。

如果您确实有数十亿个项目,我建议将它们保存在数据库而不是内存中。当然,您可以在内存中缓存子集,以使某些查询更快,但长期解决方案是数据库即使服务器出现故障也能保留值。

检查 ID 是否存在的数据库查询仅需几毫秒。我认为这是比将它们存储在内存中更好的长期解决方案。

关于java - 不确定选择哪种类型的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10167764/

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