我有两个收藏夹
第一个包含所有元素。
第二个包含我对第一个集合感兴趣的元素。
数据采用字母格式:
AAA
AA.12.AA
BBB.234.B1
CC.89
...
第一个集合大约包含30万条记录。
现在,如果我想从第一个集合中获取1万条记录,则最多需要40秒才能找到它们。
集合类型:firstColl = ArrayList,secondColl =列表
操作:我遍历firstColl中的所有元素,并针对每个元素检查secondColl中是否包含该元素。
只是想知道是否有人通过使用BigList,Streams等来了解最高性能的方法。
代码:
List<RegionPolygon> regionPolygons = new ArrayList<>();
for (RegionPolygon regionPolygon: result) {
if (regionsArray.contains(regionPolygon.getRegionRef())) {
regionPolygons.add(regionPolygon);
}
}
注意:RegionPolygon具有一个字符串属性,该字符串的值非常长(尽管我不使用该属性来检查它是否是我要查找的区域),但它很容易超过2000000个字符。只是想说这个原因,我不知道这是否是问题的一部分。
result = firstColl
regionsArray = secondColl
谢谢