Java 1D数组列表集合.contains或Hash-Map.containsKey速度



我们的数据库目前有大约400k个字符串(用户名),需要检查它们是否在请求时存在。由于需要在一秒钟内检查大量的请求(并且mysql中的数据只会定期更新),使用java而不是mysql查询可能会更好。所以我的想法是,如果mysql中存在一些特定的用户名,而不是过热的mysql,那么最好将数据从mysql加载到java并获得结果。

所以我的问题是,我应该把记录加载到哪一个,数组数组列表列表集合地图HashMap或第三如果你能想到,为了最快的速度,只检查(每个请求)一个用户名是否在列表上?

您可以在java文档中找到如何实现它们的详细信息。我相信数组列表会做线性搜索。所以HashMap很可能更好

最新更新