Collection接口
集合框架的顶级接口
是Set和List的父接口
但不是Map的父接口
集合中只能添加引用类型数据
list接口的特点:有序、对象可以重复
打印出按顺序显示且会显示出相同的对象
list的遍历方式:for循环,foreach循环,迭代器
迭代器的使用需要jdk的版本1.5以上
list的优化:指定初始容量
初始容量10,负载因子0.5
list的删除:
1.for循环顺序遍历删除会有问题(三瓶水,按顺序喝掉,第一次喝第一瓶,喝完之后第二瓶会替代第一瓶的位置,原本要喝第二瓶的位置会被第三瓶替代,第二瓶就不会喝到)
打印原本集合的长度和删除后的长度
可以看到会有两个对象没有删除
2.逆顺序删除和迭代器删除
打印原本集合的长度和删除后的长度
可以看到删除后的集合长度为0
泛型
要保证在jdk1.5之后
以类型作为参数的类就叫泛型
作用:提高程序健壮性,简化代码
泛型的默认值是Object
等同于
装箱、拆箱
值类型->引用类型 装箱
引用类型->值类型 拆箱
jdk1.5之后引入了自动装箱及自动拆箱功能
ArrayList、LinkedList、Vector区别
ArrayList:以连续的数组结构存储数据,查询块(下标)、增删改慢
LinkedList:以链表的结构存储数据,查询慢、增删改快
Vector:增删改查都慢,已过时,同步.线程安全