java集合

开发中如何选择集合实现类

  1. 先判断存储的类型(一组对象还是一组键值对)
  2. 一组对象: Collection接口

​ 允许重复:List

​ 增删多 :LinkedList(底层维护一个双向链表)

​ 改查多:Arraylist(底层维护Object的可变数组)

​ 不允许重复:Set

​ 无序 :HashSet(底层是HashMap维护(7:数组+链表 8:数组+链表+红黑树))

​ 排序:treeSet

​ 插入和去取出顺序一致:LinkedHashSet,(数组和双向链表)

  1. 一组键值对:Map

    ​ 键无序:HashMap(底层是(7:数组+链表 8:数组+链表+红黑树))

    ​ 键排序:TreeMap

    ​ 检查如何取出顺序一致:LinkedHashMap

    ​ 读取文件:properties

学习思路:

了解特点

分析底层机制

源代码阅读

集合的使用场景

集合的优点
可以动态保存任意多个对象
提供一系列方便的操作对象的方法
使用集合,添加,删除新元素的代码,简单明了
//集合主要有两组(单列集合,双列集合)
//Collection 接口有两个重要的子接口 : list set ,他们的实现子类都是单列集合,只有value
//Map 接口的实现集合,是双列集合 存放<key,value>

集合框架体系(背,重要)

| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D9db6m8D-1647997204804)(E:\qq文件\image\java进阶\Collection集合框架.jpg)] || ------------------------------------------------------------ |

| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wo8gMDJQ-1647997204806)(E:\qq文件\image\java进阶\Map集合框架.jpg)]     |

Collection

特点:

  1. Collection接口实现的子了i可以存放多个元素,每个元素都可以是Object
  2. 有些Collection实现类可以存放重复的元素

常用方法练习:

 List arraylist = new ArrayList();
        //添加元素.添加进去就变成了对象
        arraylist.add(10);//自动装箱成Integer
        arraylist.add(true);
        //删除执行的元素
        arraylist.remove(10);
        //查找
        arraylist.contains(10);
        //返回元素的个数
        arraylist.size();
        //判空
        arraylist.isEmpty();
        //清空
        arraylist.clear();

迭代器(Iterator)

Iterator 对象成为迭代器,主要用于遍历Collection集合中的元素

实现了Collection接口的集合类都有一个Iterator ()方法,用于放回一个实现Iterator 接口的对象,即一个迭代器。

Iterator 仅仅用来遍历,不能存放对象

Iterator 执行原理

| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-je7lPJt5-1647997204806)(E:\qq文件\image\java进阶\Interator执行原理.jpg)] || ------------------------------------------------------------ |

       List arraylist = new ArrayList();
        Iterator inte = arraylist.iterator();
       while (inte
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值