list去除重复有序无序队列

文章介绍了在Java中使用List的StreamAPI进行去重,以及HashSet、LinkedHashSet和TreeSet三种不同类型的集合结构处理重复元素的方法,强调了它们的特性:HashSet无序且不保证元素顺序,LinkedHashSet有序但允许重复,TreeSet有序且不允许重复。
摘要由CSDN通过智能技术生成

去重方便取值推荐使用


        List<Integer> listWithDuplicates = new ArrayList<>();
		// ... 添加元素
        listWithDuplicates.add(2);
        listWithDuplicates.add(2);
        listWithDuplicates.add(1);
        listWithDuplicates.add(1);
        listWithDuplicates.add(3);
        listWithDuplicates.add(3);

		// 使用Stream API去重
        List<Integer> listWithoutDuplicates = listWithDuplicates.stream()
                .distinct() // 去重
                .collect(Collectors.toList()); // 收集结果到新的列表

        System.out.println(listWithoutDuplicates); // 输出去重后的列表

list去除重复有序无序队列

import java.util.*;

public class listtxt {
    public static void main(String[] args) {

        System.out.println("---------------HashSet-----------------");
        Set<Integer> hashSet = new HashSet<>();
        // 添加重复的元素
        hashSet.add(3);
        hashSet.add(3);
        hashSet.add(2);
        hashSet.add(2);
        hashSet.add(1);
        hashSet.add(1);
        System.out.println("HashSet:  " + hashSet); // 输出: Unique elements: [1, 2, 3]
        System.out.println("---------------HashSet-----------------");
        System.out.println();
        System.out.println();
        System.out.println("---------------LinkedHashSet-----------------");
        Set<Integer> linkedHashSet = new LinkedHashSet<>();
        // 添加重复的元素
        linkedHashSet.add(3);
        linkedHashSet.add(3);
        linkedHashSet.add(2);
        linkedHashSet.add(2);
        linkedHashSet.add(1);
        linkedHashSet.add(1);
        System.out.println("linkedHashSet : " + linkedHashSet); // 输出: Unique elements: [3, 2, 1]
        System.out.println("---------------LinkedHashSet-----------------");
        System.out.println();
        System.out.println();
        System.out.println("---------------TreeSet-----------------");
        SortedSet<Integer> treeSet = new TreeSet<>();
        // 添加重复的元素
        treeSet.add(3);
        treeSet.add(3);
        treeSet.add(2);
        treeSet.add(2);
        treeSet.add(1);
        treeSet.add(1);
        System.out.println("TreeSet:  " + treeSet); // 输出: Unique elements: [1, 2, 3]
        System.out.println("---------------TreeSet-----------------");


		System.out.println("---------------LinkedHashSet-----------------");
        Set<Integer> linkedHashSet1 = new LinkedHashSet<>();
        // 添加重复的元素
        linkedHashSet1.add(3);
        linkedHashSet1.add(3);
        linkedHashSet1.add(2);
        linkedHashSet1.add(2);
        linkedHashSet1.add(1);
        linkedHashSet1.add(1);

        Iterator<Integer> iterator = linkedHashSet1.iterator();
        while(iterator.hasNext()){
            Integer number = iterator.next(); // 取出元素
            System.out.println("取出的元素: " + number);
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值