java linkedlist 去重_linkedlist集合去重

/**

* 已知数组存放一批QQ号码,QQ号码最长为11位,最短为5位

* String[] strs = {"12345","67891","12347809933","98765432102","67891","12347809933"}。

* 将该数组里面的所有qq号都存放在LinkedList中,将list中重复元素删除,

* 将list中所有元素分别用迭代器和增强for循环打印出来

*/

public class LinkedList02 {

public static void main(String[] args) {

LinkedList linkedList = new LinkedList<>();

String[] strs = {"12345","67891","12347809933","98765432102","67891","12347809933"};

for (int i = 0; i < strs.length ; i++) {

String str = strs[i];

linkedList.add(str);

}

/*

循环list集合,将新集合中没有的元素添加到新集合

此法可在去重的同时保持原来的顺序

使用迭代器删除重复元素,可保持原来的顺序

*/

Iterator iterator = linkedList.iterator();

LinkedList newlist1 = new LinkedList<>();

while (iterator.hasNext()){

String next = iterator.next();

//将新集合中没有的元素添加到新集合

if(!newlist1.contains(next)){

newlist1.add(next);

}

}

System.out.println(newlist1);

System.out.println("------------方法二-------------");

/*

使用HashSet的无重复的特性,只是去重后的List不能保持原来的顺序

*/

//s使用hashset去掉重复

Set set = new HashSet<>(linkedList);

//得到去重后的新集合

LinkedList newList = new LinkedList<>(set);

System.out.println(newList);

}

}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值