java022 - Java集合进阶

1、集合知识回顾 

1.1 集合特点

提供了一种储存空间可变的储存模型,储存的数据容量随时可以发生改变。

1.2 集合类体系结构

单列集合和双列集合:

单列集合中:list和set区别(数据是否重复) 

区分接口和实现类:颜色 

2、Collections

2.1 Collections概述和使用

 代码:ArrayList重写了toString方法,所以打印的是值,不是一个对象的内存地址。

2.2 Collection集合常用方法

代码:

可以存储重复的数据:

 remove()

clear()

 contains()

isEmpty()

2.3 Collection集合遍历

 代码:

2.4 Collection使用步骤和图解

 2.5 案例

代码:

学生类:

测试类:

  • 创建集合对象
  • 创建学生对象
  • 把学生添加到集合
  • 遍历打印

3、List

3.1 List集合概述和特点

 代码:

遍历:

 3.2 List集合的特有方法

代码:

遍历:

3.3  案例

代码:

学生类:

 测试类:

3.4 并发修改异常

3.5 ListIterator

 3.5 增强for循环

4、Set

4.1 Set集合概述和特点

代码:

4.2 哈希值

代码:

学生类:

测试类:

4.3 HashSet集合概述和特点

4.4 HashSet元素唯一性源码分析

4.5 常见数据结构之哈希表

 4.6 HashSet案例

代码:

学生类:

测试类:

此时,并没有去除重复的数据,如下图: 

解决方案:在学生类重写hashcode和 equals方法 

 4.7 LinkedHashSet集合

 4.8 TreeSet集合

 

4.9 自然排序Comparable使用

4.10 比较器排序Comparator使用

5、泛型 

5.1 泛形概述

代码:

 

5.2 泛形类 

可以简化代码,比如下面定义一个泛型类,可以省略学生类和老师类的定义。

学生类:

老师类: 

泛型类:

测试类:

5.3 泛形方法

普通类:

测试类:

 改进泛型类:

改进泛型类测试:

 改进泛型方法:

改进泛型方法测试: 

5.4 泛形接口

泛型接口:

接口实现类:

测试类:

5.5 类型通配符

5.6 可变参数

代码:要求n个数的和,就要写n个方法,冗余

 

5.7 可变参数使用

代码:

6、Map

6.1 Map集合概述

 代码:

6.2 Map集合基本功能

代码:

 6.3 Map集合的获取功能

代码:

6.4 Map集合的遍历

代码:

 

 6.5 案例

案例1

 代码:

学生类:

测试类: 

 

案例2

代码:

学生类

 测试类:

问题:

 解决:重写hashcode和equals

重写后结果:保证key唯一性

案例3 

代码:

案例4

 代码

 案例5

代码:

 

 

 7、Collections

7.1 概述及使用

3个字:工具类

代码demo: 

 

 7.2 案例

代码:

 

 

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值