自学Java第二十八课

List

  继承自Collection,有序集合(序列),用户使用List可以精确控制元素的插入位置,通过索引访问元素并搜索元素;与Set不同,List可以存储重复的元素。

 

 

 

   List特有方法

void add(int index,E element) 将指定元素添加至指定位置
E remove(int index) 删除指定位置元素,返回E
E set(int index,E element) 修改指定位置元素,返回 E
E get(index) 返回指定位置元素

 

 List可以使用get方法索引遍历

 

 List案例,List集合继承自Collection,可以使用Iterator或for循环遍历

 

   并发修改异常

原因:迭代器遍历过程中,通过集合对象修改了集合中的元素长度,造成迭代器获取元素判断预期修改值和实际修改值不同。

if(list.equals("hello")){
list.add("java")
}

解决:用for循环遍历,然后用集合对象操作。

  ListIterator

1、通过List集合的ListIterator()方法得到;

2、用于允许程序员沿任一方向遍历列表的列表迭代器,在迭代期间修改列表,并获取列表中迭代器当前位置。

常用方法

E next() 返回迭代中下一个元素
boolean hasNext() 迭代更多元素,返回true
E previous() 返回列表中上一个元素
boolean hasPrevious() 此列表迭代器在相反方向遍历列表有更多元素,返回true
void add(E e) 将指定元素插入列表

 

 

 

 

 

 

 

 

 

   增强for循环

目的:简化数组和Collection集合的遍历

实现Iterator接口的类允许其对象称为增强型for语句目标。

原理:Iterator迭代器

格式            for(元素数据类型 变量名:数组或Collection名){}

 

 可以用

if...{list.add()}测验原理。

明天将继续学习集合结构体系。

 

posted on 2021-08-01 20:50  跨越&尘世  阅读(22)  评论(0编辑  收藏  举报