java数据结构——集合框架及Collection、Map接口的介绍

Java
292
0
0
2022-11-25
标签   数据结构

1.集合框架

Java 集合框架 Java Collection Framework ,又被称为容器 container ,是定义在 java.util 包下的一组 接口 interfaces 和其实现类 classes 。

类和接口总览

img

其中,Collection 和 Map 接口是常用接口

2.Collection接口

img

图中接口解释:

  1. Collection :用来存储管理一组对象 objects ,这些对象一般被成为元素 elements
  2. Set : 元素不能重复,背后隐含着查找/搜索的语义 ,不要求顺序(1,2,3与3,2,1是相同的set)
  3. SortedSet : 一组有序的不能重复的元素
  4. List : 线性结构,里面的元素是相对有序的,可以在中间插入删除
  5. Queue : 队列,元素之间相对有序,只能头插,头删,尾插,尾删
  6. Deque : 双端队列

实现过程:、 1.实例一个Collection 对象,他是一个接口,需要实例化

img

注:此处也可以ArrayList(),是泛型参数,调用者可以通过这个来指定集合类中存储什么类型的元素

**泛型编程:**写一份代码,能够同时适应多种不同的数据类型

2.使用size/isEmpty

补充: 数组、字符串、集合获取元素个数的方式不一样,我们需要在这里区分以下:

img

isEmpty()使用时,如果集合为空,则为true;

img

3.添加元素

img

4.toArray把集合转换成数组

img

5.遍历

img

6.判断元素是否存在

img

7.删除某一个元素

img

8.清空全部

img

2.Map接口

图中接口解释:

  1. Map : 键值对 Key-Value-Pair ,背后隐含着查找/搜索的语义
  2. SortedMap : 一组有序的键值对

实现过程 1.实例化

img

2.isEmpty size

img

3.put插入几个键值对 通过key来寻找value 反向不行

img

4.使用get根据key找一下value

img

注意:此处找“宣委”时未找到,但如果我们想添加这个未找到的元素,则需要使用getOrDefault方法,返回默认值

img

5.使用 contains 判断是否存在

img

containsKey:是查找key的值,比较高效 containsValue:是查找value的值,比较低效

6.循环遍历Map 注: 1.此处的entry表示“条目” 一个一个的键值对,map.entrySet 是获取到所有键值对 2.Map插入的顺序与保存的顺序无关

img

7.通过clear清空元素

img