第一阶段——javaSE——04.java集合

目录

 

一、单列集合和双列集合特性正在上传…重新上传取消​

二、集合的数据结构与使用场景

三、java中的集合的实际应用


一、单列集合和双列集合特性

二、集合的数据结构与使用场景

(1)、单列集合——List集合:(有序,元素可以重复)

            1.ArrayList集合:

                  1).底层数据结构是数组,查找快,增删慢。

                  2). 线程不安全,效率高

            2.Vector集合:

                   1) 底层数据结构是数组,查询快,增删慢

                   2)线程安全,效率低

            3.LinkedList集合:

                   1) 底层数据结构是链表,查询慢,增删快

                   2)线程不安全,效率高

总结:在日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。

          在开发中如果对一个集合元素的添加与删除经常涉及到首尾操作,而LinkedList提供了大量首尾操作的方法

          Vector不常使用,已被ArrayList替代

(2)、单列集合——Set集合:(无序,元素不可重复)

           1.HashSet集合:

                  1).底层数据结构是哈希表,查找快,增删慢。

                  2). 线程不安全,效率高

            2.LinkHashSet集合:

                   1) 底层数据结构是链表+哈希表,查询快,增删快

                   2)非线程安全,效率低

            3.TreeSet集合:

                   1) 底层数据结构是红黑树,查询快,增删慢

                   2)非线程安全,效率低

(1)、双列集合——Map集合:

            1.HashTable集合:

                  1).底层数据结构是数组

                  2). 线程安全

            2.HashMap集合:

                   1) 底层数据结构是数组

                   2)非线程安全

            3.LinkedHashMap集合:

                   1) 底层数据结构是链表

                   2)非线程安全

            4.TreeMap集合:

                   1) 底层数据结构是红黑树

                   2)非线程不安全

           5.ConcurrentHashMap集合:(面试中常与hashMap比较)

                   1) 底层数据结构是数组+链表+红黑树,查询慢,增删快

                   2)线程安全,效率高

三、java中的集合的实际应用

(1)、List常用方法

  1. 增加元素方法
  2. add(Object e):向集合末尾处,添加指定的元素
  3. add(int index, Object e):向集合指定索引处,添加指定的元素,原有元素依次后移
  4. 删除元素删除
  5. remove(Object e):将指定元素对象,从集合中删除,返回值为被删除的元素
  6. remove(int index):将指定索引处的元素,从集合中删除,返回值为被删除的元素
  7. 替换元素方法
  8. set(int index, Object e):将指定索引处的元素,替换成指定的元素,返回值为替换前的元素
  9. 查询元素方法
  10. get(int index):获取指定索引处的元素,并返回该元素

 

(3)、Map常用方法

  1. put方法:将指定的键与值对应起来,并添加到集合中
  2. get方法:获取指定键(key)所对应的值(value)
  3. remove方法:根据指定的键(key)删除元素,返回被删除元素的值(value)。



 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高数老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值