问个java的基础问题啊

lwmonster 2011-08-16 11:54:57

现在我有个列表 list 里面存了 几十个元素,(目前用ArrayList存储的), 现在遍历 list 表中的每个元素进行处理,每个元素又能够得到很多同类的元素,获得之后重新添加到list里, 但是这时可能有重复,所以添加之前要检查是否已存在,不存在才再添加。 现在检查存在是个问题,因为最后list里面可能有几十万个元素,因为元素太多,线性遍历效率就太低了,所以 有哪位大侠 有好的办法? 貌似 HashMap 挺好的, 但是不知道怎么用,高手来指点一下呀!!!
...全文
109 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
疯狂的驴子 2011-08-16
  • 打赏
  • 举报
回复
用set了
luohuijun619 2011-08-16
  • 打赏
  • 举报
回复
List如果里面数据多了,可以多线程拆i开读
龙四 2011-08-16
  • 打赏
  • 举报
回复
直接用set不就好了,判断都不需要了

人家底层也是用的map
我嘞个去 2011-08-16
  • 打赏
  • 举报
回复
你的意思是 把list里边的元素放到另外一个list里边 然后遍历?
meran 2011-08-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zl3450341 的回复:]
其实我完全没懂你的意思,绕来绕去,最后不知道你讲什么。只知道你有一个ArrayList里面存放了几十个元素
[/Quote]

看不懂
zl3450341 2011-08-16
  • 打赏
  • 举报
回复
其实我完全没懂你的意思,绕来绕去,最后不知道你讲什么。只知道你有一个ArrayList里面存放了几十个元素
softroad 2011-08-16
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lwmonster 的回复:]

简单点说 就是有一个list ,我在遍历这个list的同时还要添加元素进去,同时list中的元素不能重复,所以要检查存在性。

看JDK的API, 用HashSet 存储 我自定义的类对象的时候要重写 equals()方法和hashCode()方法,大侠们有没有例子呀?
[/Quote]

不用重写,直接用。
wjy19881024 2011-08-16
  • 打赏
  • 举报
回复
直接用Set啊,重复数据是插入不进去的
小赖赖 2011-08-16
  • 打赏
  • 举报
回复
用HashSet即可
equals()方法和hashCode()用父类的就行了,没必要重写
lwmonster 2011-08-16
  • 打赏
  • 举报
回复
简单点说 就是有一个list ,我在遍历这个list的同时还要添加元素进去,同时list中的元素不能重复,所以要检查存在性。

看JDK的API, 用HashSet 存储 我自定义的类对象的时候要重写 equals()方法和hashCode()方法,大侠们有没有例子呀?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧