1、迭代器遍历
Collection<String> coll = new ArrayList<>();
coll.add("aaa");
coll.add("bbb");
coll.add("ccc");
coll.add("ddd");
Iterator<String> it = coll.iterator(); //迭代器默认0索引
while (it.hasNext()){ //判断当前的位置下一条是否存在,存在为true,不存在false
String str = it.next(); //将下一条数据进行操作
System.out.println(str);
}
2、增强for循环,底层也是迭代器
Collection<String> coll = new ArrayList<>();
coll.add("aaa");
coll.add("bbb");
coll.add("ccc");
coll.add("ddd");
for (String str:coll){ //str为集合中元素的第三方表示方法
System.out.println(str); //对实例的操作不会影响集合中的元素
}
3、lambda表达式
Collection<String> coll = new ArrayList<>();
coll.add("aaa");
coll.add("bbb");
coll.add("ccc");
coll.add("ddd");
coll.forEach(s -> System.out.println(s));
List集合专属遍历方式:
1、普通for循环
List<Integer> list = new ArrayList<>();
list.add(111);
list.add(122);
list.add(123);
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
2、列表迭代器
List<Integer> list = new ArrayList<>(); list.add(111); list.add(122); list.add(123); ListIterator<Integer> it = list.listIterator(); while (it.hasNext()){ int i = it.next(); if(i == 111){ it.add(333); //列表迭代器特有方法:可以在list集合中进行添加元素 } }