【JavaSE】【集合框架】Collection

1 篇文章 0 订阅
1 篇文章 0 订阅

1、Collection概述

1.1 概述

集合框架图

在这里插入图片描述

集合框架体系如图所示

在这里插入图片描述

集合与数组的区别

在这里插入图片描述

1.2 Collection集合常用方法(JDK帮助文档)

在这里插入图片描述

求交集

在这里插入图片描述

1.3 Collection集合与数组之间的转换

集合 to 数组

在这里插入图片描述

数组 to 集合 (通过Arrays工具类实现)

在这里插入图片描述
注意:
包装类与基础数据类型的数组转集合的差异
原因:

  • 转换时将基础数据类型的数组 整体作为一个 对象(元素)转成集合
  • 而包装了类转换为集合时,每一个元素都是一个对象
        List<int[]> list1 = Arrays.asList(new int[]{12, 123});
        System.out.println(list1.size());
        System.out.println(list1);

        System.out.println("------------------");
        List<Integer> list2 = Arrays.asList(new Integer[]{12, 123});
        System.out.println(list2.size());
        System.out.println(list2);

//输出
1
[[I@3cd1a2f1]
------------------
2
[12, 123]

1.4 使用Collection集合存储对象时,要求对象所属的类满足如下条件

要求该对象所在的类需要重写equals()方法

2、Colletion遍历

2.1 遍历Collection的两种方式

1、使用迭代器 Iterator

2、foreach循环

2.2 java.util.Iterator 接口

2.2.1 说明

  • Iterator对象称为迭代器(设计模式的一种),主要用于遍历Collection集合中的元素。
  • GOF给迭代器模式的定义:提供一种方法访问一个容器(container)对象中的各个元素,而又不需要暴露该对象的内部细节。 迭代器模式,就是为容器而生!

2.2.2 作用

遍历Collection集合元素

注意:不包括 Map

2.2.3 如何获取实例

coll.iterator()

2.2.4 遍历的代码实现

        //方式一:通过迭代器 实现遍历
        Iterator iterator = coll.iterator();
        while (iterator.hasNext()){
            System.out.println(iterator.next());
        }

        //方式二:通过Collection接口实现 - foreach
//        coll.forEach(System.out::println);

2.2.5 示意图

在这里插入图片描述

2.2.6 remove方法

        Collection coll = new ArrayList();
        coll.add("aa");
        coll.add("b");
        coll.add("d");
        coll.add("c");

        //删除集合中的 "d"
        Iterator iterator = coll.iterator();
        while (iterator.hasNext()){
            Object obj = iterator.next();
            if ("d".equals(obj)){
                iterator.remove();
            }
        }

注意

此方法不同于集合的 remove()方法
在这里插入图片描述

3、jdk1.5新特性 - foreach增强for循环

3.1 用于遍历集合

        //foreach循环
        // for(集合元素类型 局部变量 : 集合对象)
        // 本质上还是迭代器
        for (Object obj : coll) {
            System.out.println(obj);
        }

3.2 用于遍历数组

代码略

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值