首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

ArrayList去重复有关问题

2013-10-07 
ArrayList去重复问题一个对象E的ArrayListE,长度比较大,百万级,要根据对象E的的两个元素a,b去重复,也就

ArrayList去重复问题
一个对象E的ArrayList<E>,长度比较大,百万级,要根据对象E的的两个元素a,b去重复,也就是当(a1==a2)&&(b1==b2)时判定为重复,也可能有第三个元素,怎么写速度快?
[解决办法]

引用:
对象E的的两个元素是什么意思


对象E的两个成员变量的意思。
放入HashSet里面,重写equals方法。
我感觉这个就没有算法可言了,既然是list,就只能遍历一遍了。。把每一个元素都放入set里面,重的自然就没了

[解决办法]
引用:
Quote: 引用:

对象E的的两个元素是什么意思


对象E的两个成员变量的意思。
放入HashSet里面,重写equals方法。
我感觉这个就没有算法可言了,既然是list,就只能遍历一遍了。。把每一个元素都放入set里面,重的自然就没了

和我的想法一样,不过应该还得重写hashCode方法,貌似Set是借助Map,利用Map中Key的唯一性,来保证不出现重复值。
[解决办法]
如果您要是用这种判定,可以用while循环或者是Map,while循环速度比较快,map可以确保key唯一。

热点排行