apiday03
集合
- 集合和数组一样,可以保存一组数据,并且提供了操作集合元素的相关方法,使用更加方便。
- java集合框架中相关的接口
- java.util.Collection接口:是所有集合的顶级接口,封装了所有集合所共有的方法,下面有多种实现类,因此我们有更多的数据结构可以选择
- Collection接口下面有两种常见的接口:
- java.util.List:线性表,是可以重复的集合,并且有序
- java.util.Set:不可重复集合,大部分实现类是无序的
- 集合只能存储引用类型元素
- Collection常用方法:
- add():向集合中添加一个元素,成功添加则返回true(这里重要的是添加元素,所以一般不需要接收boolean的数值)
- size():返回当前集合的元素个数
- isEmpty():判断当前集合是否为空集,当且仅当size()为0时返回true
- clear():清空集合
- contains():判断集合中是否包含该元素
- remove():从集合中删除该元素
- addAll():将参数组定集合中的元素添加到当前集合中,添加后当前集合发生改变则会返回true
- containsAll():判断当前集合中是否包含给定参数集合中的所有元素
- retainAll():取交集,并赋值给当前集合
- removeAll(): 删交集,并赋值给但前集合
- 集合的遍历:
- Collection接口提供了统一的遍历集合方式:迭代器模式,通过iterator()方法可以获取一个用于遍历当前集合元素的迭代器(Iterator接口)
- ava.util.Iterator接口:定义了迭代器遍历集合的相关操作,不同的集合都实现了用于遍历自身元素的迭代器实现类,但我们无需记住它们的名字,从多态的角度把它们看成Iterator即可。
- 迭代器遍历遵循的步骤为:问(hasNext())、取(next())、删(remove()),但删除并不是必要操作
- 增强for循环
- jdk1.5时推出了一个特性:也叫新循环,让我们使用相同的语法遍历集合和数组
- 语法:
for(元素类型 变量名 : 集合/数组){
循环体
}
- 泛型:
- jdk1.5时推出了一个特性:泛型
- 泛型也称为参数化类型,允许我们在使用一个类时,传入某个类型来规定其内部的属性、方法参数或返回值类型,使得我们使用时更方便
- 泛型在集合中被广泛使用,用雷指定集合中的元素类型
- 若不指定泛型的具体类型,默认为Object类
- 若指定了泛型的具体类型,在获取泛型的值时,编译器会补充强转操作
- 集合与数组的转换
- 集合转为数组:Collection中的方法toArray()
- 数组转为集合:Arrays类的静态方法asList()
总结
- 这几天的API学习有好多需要记的知识点,今天学的集合更是重中之重,我取打代码练习了,大家也是多用用方法才能记下来,光背没用的。