集合复习JAVA

1.Collection单列集合

                      -1List       -2.Set

集合:单列集合,双列集合
Collextion:是一个接口
Collextion 集合-单列集合:1.List集合    2.Set集合

List:添加的元素是有序的,可重复的,有索引
Set: 添加的元素是无序的,不重复,无索引

### 数组和集合的区别【理解】

- 相同点

  都是容器,可以存储多个数据

- 不同点

  - 数组的长度是不可变的,集合的长度是可变的

  - 数组可以存基本数据类型和引用数据类型

    集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类

1.List集合的基本特性

## 2.List集合

### 2.1List集合的概述和特点【记忆】

- List集合的概述
  - 有序集合,这里的有序指的是存取顺序
  - 用户可以精确控制列表中每个元素的插入位置,用户可以通过整数索引访问元素,并搜索列表中的元素
  - 与Set集合不同,列表通常允许重复的元素
- List集合的特点
  - 存取有序
  - 可以重复
  - 有索引

### 2.2List集合的特有方法【应用】

- 方法介绍

  | 方法名                          | 描述                                   |
  | ------------------------------- | -------------------------------------- |
  | void add(int index,E   element) | 在此集合中的指定位置插入指定的元素     |
  | E remove(int   index)           | 删除指定索引处的元素,返回被删除的元素 |
  | E set(int index,E   element)    | 修改指定索引处的元素,返回被修改的元素 |
  | E get(int   index)              | 返回指定索引处的元素                   |

-
List集合的五种遍历方式
1.迭代器遍历
2.列表迭代器
3.增强for循环
4.lambda表达式
5.普通for循环(List)有索引

### 3.1数据结构之栈和队列【记忆】

- 栈 结构

  ​ 先进后出

- 队列 结构

  ​ 先进先出

### 3.2数据结构之数组和链表【记忆】

- 数组 结构

  ​ 查询快、增删慢

- 队列 结构

  ​ 查询慢、增删快

## 4.List集合的实现类

### 4.1List集合子类的特点【记忆】

- ArrayList集合-数组集合

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

- LinkedList集合-链表集合

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

### 4.2LinkedList集合的特有功能【应用】

- 特有方法

  | 方法名                    | 说明                             |
  | ------------------------- | -------------------------------- |
  | public void addFirst(E e) | 在该列表开头插入指定的元素       |
  | public void addLast(E e)  | 将指定的元素追加到此列表的末尾   |
  | public E getFirst()       | 返回此列表中的第一个元素         |
  | public   E getLast()      | 返回此列表中的最后一个元素       |
  | public E removeFirst()    | 从此列表中删除并返回第一个元素   |
  | public   E removeLast()   | 从此列表中删除并返回最后一个元素 |

2.Set集合基本特性

1. 如果想要集合中的元素可重复
- 用ArrayList集合,基于数组的。(用的最多)

2. 如果想要集合中的元素可重复,而且当前的增删操作明显多于查询
- 用LinkedList集合,基于链表的。

3. 如果想对集合中的元素去重
- 用HashSet集合,基于哈希表的。(用的最多)

4. 如果想对集合中的元素去重,而且保证存取顺序
- 用LinkedHashSet集合,基于哈希表和双链表,效率低于HashSet。

5. 如果想对集合中的元素进行排序
- 用TreeSet集合,基于红黑树。后续也可以用List集合实现排序。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值