为了账号安全,请及时绑定邮箱和手机立即绑定

如何从ArrayList中删除重复元素?

如何从ArrayList中删除重复元素?

婷婷同学_ 2019-05-31 17:13:11
如何从ArrayList中删除重复元素?我有一个ArrayList<String>,我想从它中删除重复的字符串。我该怎么做?
查看完整描述

4 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

如果您不想在Collection,您应该考虑为什么要使用Collection允许复制。删除重复元素的最简单方法是将内容添加到Set(这将不允许重复),然后添加Set回到ArrayList:

Set<String> set = new HashSet<>(yourList);yourList.clear();yourList.addAll(set);

当然,这会破坏ArrayList.


查看完整回答
反对 回复 2019-05-31
?
喵喵时光机

TA贡献1846条经验 获得超7个赞

在Java 8中:

List<String> deduped = list.stream().distinct().collect(Collectors.toList());

请注意,hashCode-相等列表成员的契约应该得到尊重,过滤才能正常工作。


查看完整回答
反对 回复 2019-05-31
?
达令说

TA贡献1821条经验 获得超6个赞

如果不希望复制,请使用而不是List..转换为List转到Set您可以使用以下代码:

// list is some List of StringsSet<String> s = new HashSet<String>(list);

如果确实有必要,可以使用相同的构造来转换Set回到一个List.


查看完整回答
反对 回复 2019-05-31
  • 4 回答
  • 0 关注
  • 1007 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信