1.前一天重点内容复习
集合和数组的区别
长度的区别:
数组的长度是固定的
集合的长度是可变的
存储数据类型的区别:
数组可以存储基本数据类型,也可以存储引用数据类型
集合存储的数据类型只能是引用数据类型
存储数据的区别:
数组存储的数据只能是同一种类型的元素
集合存储的数据,如果没有泛型限定,则可以存储任何引用类型数据,如果存在泛型限定,则只能存储泛型限定类型的数据
Collection集合的遍历方式
1.使用toArray()方法,将集合转换为对象数组,利用数组遍历方式进行遍历
2.使用迭代器iterator()方法,获取到此集合的迭代器,使用迭代器的hasNext()方法,来判断迭代器中是否有元素,如果有,则使用next()方法获取到下一个元素,循环操作进行遍历
3.增强for循环进行遍历
格式:
for(数据类型 变量名: 集合对象){
使用变量名访问数组中的对象
}
List集合的特点
List集合可以允许元素重复
存储数据顺序和取出数据顺序一致
List集合的遍历方法
1.Collection集合的遍历方式均可以在List集合遍历上使用,因为Collection是List的夫接口
2.列表迭代器:ListIterator listiterator():获得List对象的迭代器
hasNext():判断迭代器的下一个位置是否还有元素
next():获取迭代器下一个位置的元素
hasPrevious():判断迭代器的上一个位置是否还有元素
previous():获取迭代器上一个位置的元素
反向遍历之前必须要正向遍历,否则迭代器中的指针在列表开头,无法反向遍历
3.通过get(int index)方法获取到集合中指定索引的元素,size()方法获取到集合的元素总数,加上普通循环实现遍历
2.ConcurrentModificationException异常
名称:并发修改异常,
原因:使用迭代器遍历元素,不能使用集合对象操作元素,否则就出现并发修改异常
解决方法:
1.使用迭代器遍历,迭代器操作元素,这个迭代器为ListIterator
2.使用集合遍历,集合操作元素
3.选择排序思想
在需要排序的数组中,未确定顺序位置的元素中第一个位置的元素依次和其他元素比较大小,如果其他元素比第一个元素小,则将元素交换位置,直至与其他元素都比较完成,则第一个位置元素确定为此数组中最小的元素,之后未确定元素位置顺序的其他元素重复执行以上比较操作,将数组中元素位置全部确定即可比较完成