Collection接口

1. colection接口介绍

​ collection接口是单列集合的顶级接口,其子类接口有List、Set、Queue,在这个接口中的所有方法,在所有的实现类中都存在。

2. 常用方法
        // 1. 实例化Collection实现类的对象,并且向上转型到Collection类型
        Collection<Integer> collection = new ArrayList<>();

        // 2. 向集合末尾添加一个元素
        collection.add(10);
        collection.add(20);
        collection.add(30);

        // 4. 删: 从集合中删除指定的元素(只会删除从前往后第一个匹配到的元素)
        collection.remove(1);

        // 6. 删: 按照条件删除元素
        //    逻辑: 依次将集合中的每一个元素,带入到实参的方法中,进行条件匹配。
		//		如果返回值是true,就删除这个元素。
        collection.removeIf(ele -> ele > 10);

        // 8. 删: 清空集合
        collection.clear();

        // 9. 判断集合中是否包含某一个元素
        System.out.println(collection.contains(1));

        // 11. 返回集合中元素的数量,类似于 array.length
        System.out.println(collection.size());

        // 12. 判断一个集合是否是一个空集合(0个元素、size() == 0)
        System.out.println(collection.isEmpty());

        // 13. 将集合转成数组
        Object[] arr1 = collection.toArray();

        // 14. 将集合转成指定类型的数组
        Integer[] integers = collection.toArray(new Integer[0]);

        // 3. 向集合中批量添加元素(将参数集合中的元素,依次添加到指定的集合中)
        Collection<Integer> tmp = new ArrayList<>();
        tmp.add(1);
        tmp.add(2);
        tmp.add(3);
        collection.addAll(tmp);

        // 5. 删: 删除collection集合中,所有的在参数集合中存在的元素
        collection.removeAll(tmp);

        // 7. 【可选】删: 保留集合中,在参数集合中存在的元素
        collection.retainAll(tmp);

        // 10. 判断参数集合中,所有的元素,是否都在指定的集合中包含
        System.out.println(collection.containsAll(tmp));
3. 排序
  • 注意:对象名.forEach()
    // 1. 使用增强for循环进行遍历
    //    在使用增强for循环遍历集合的时候,不允许对集合进行任何改动
    private static void method1(Collection<Integer> collection) {
        for (Integer integer : collection) {
            System.out.println(integer);
        }
    }

    // 2. Java8之后出现的方法: forEach
    //    forEach(Consumer<T> comsumer)
    //    将集合中的元素,依次带入comsumer接口的accept方法中,作为参数
    private static void method2(Collection<Integer> collection) {
        // collection.forEach(ele -> System.out.println(ele));
        collection.forEach(System.out::println);
    }

    // 3. 使用迭代器进行遍历
    //    hasNext() : 判断迭代过程中,是否还有下一个元素可以迭代
    //    next()    : 向后指向一个元素,并返回当前指向的元素
    private static void method3(Collection<Integer> collection) {
        // 1. 获取一个用来迭代当前集合的一个迭代器对象
        Iterator<Integer> iterator = collection.iterator();
        // 2. 判断是否还有写一个元素可以迭代
        while (iterator.hasNext()) {
            Integer element = iterator.next();
            System.out.println(element);
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值