List嵌套遍历优化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了List嵌套遍历优化相关的知识,希望对你有一定的参考价值。

参考技术A 1.有两个集合List<String> userIds,List<String> ids,前者10w条后者20w条数据 现在要取出匹配得上的数据。按正常的嵌套循环执行次数为10x20=200w次。

解决思路:将数据量最大的集合转成map,数据量小集合进行遍历,次数变为了 20w+10w=30w次

字符串集合,实体类集体转成Map:

Map<String, Object> map = list.stream().collect(Collectors.toMap(Function.identity(),v->0));

Map<String,User> map = userList.stream().collect(Collectors.toMap(User::getName,p->p));

.NET性能优化-快速遍历List集合

https://www.cnblogs.com/InCerry/p/Fast-Enumerate-List.html

以上是关于List嵌套遍历优化的主要内容,如果未能解决你的问题,请参考以下文章

c#遍历嵌套层次很多的xml

VC下如何遍历文件夹及嵌套文件夹

.NET性能优化-快速遍历List集合

集合,迭代器遍历集合,嵌套集合

.NET性能优化-快速遍历List集合

Java基础增强:集合的嵌套案例