集合的总结与复习

集合总结

1.1 什么是集合

集合可以看做是一个对象容器,可以存储很多个对象,管理多个对象及操作比较方便

1.2 集合与数组的区别

长度区别:
数组的长度是固定的而集合的长度是可变的;

存储数据类型的区别:
数组可以存储基本数据类型,也可以存储引用数据类型; 而集合只能存储引用数据类型;

内容区别:
数组只能存储同种数据类型的元素,集合可以存储不同类型的元素;

1.3 集合框架图

1.4 Collection接口

单列数据,定义了存取一组对象的方法的集合

List: 元素有序、可重复的集合

Set: 元素无序、不可重复的集合

Map接口: 双列数据,保存具有映射关系“key-value对”的集合

1.5 单列集合

1.6 双列集合

1.7 List集合子类的特点

ArrayList集合

底层是数组结构实现,查询快、增删慢
LinkedList集合

底层是链表结构实现,查询慢、增删快

1.8 set集合的排序方法

自然排序:

自定义类实现Comparable接口,重写compareTo方法,根据返回值进行排序

比较器排序:

创建TreeSet对象的时候传递Comparator的实现类对象,重写compare方法,根据返回值进行排序

1.9 hashMap集合特点

HashMap底层是哈希表结构的

依赖hashCode方法和equals方法保证键的唯一

如果键要存储的是自定义对象,需要重写hashCode和equals方法

1.10 hashMap集合底层

jdk1.8以前是数组+链表;jdk1.8以后是数组+链表+红黑树

1.11 treeMap集合特点

TreeMap底层是红黑树结构

依赖自然排序或者比较器排序,对键进行排序

如果键存储的是自定义对象,需要实现Comparable接口或者在创建TreeMap对象时候给出比较器排序规则

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

立花泷的学习日记

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

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

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

打赏作者

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

抵扣说明:

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

余额充值