Iteración de la colección de interfaz de lista (continuación de la colección)
para **** recorrido de bucle
Obtenga la información de datos correspondiente a través del valor del índice
Nota : La longitud de la colección cambia después de eliminar el elemento i sigue creciendo hacia atrás
Mejorado para recorrido de bucle
También obtenga información a través de iteradores
-
Operar en elementos cuando no se permite el cruce
-
Si la operación (eliminar) arrojará una excepción
-
Solo se permite una operación, después de que la operación debe interrumpirse para finalizar el ciclo; de lo contrario, se lanzará una excepción
Recorrido del iterador ( iterador )
Devuelve un iterador a través de la colección.
package day3;
import java.util.ArrayList;
import java.util.Iterator;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList alist=new ArrayList();
alist.add("a");
alist.add("s");
alist.add("d");
alist.add("f");
alist.add("g");
/*
for 循环遍历
注意:删除元素后 集合的长度发生变化 i一直向后增长
*/
/*for (int i = 0; i <alist.size() ; i++) {
if (alist.get(i).equals("s")){
alist.remove(i);
}
}
System.out.println(alist);*/
/*
增强for循环 不允许遍历时,对元素进行操作
如果进行操作(删除) 会抛出异常
只允许操作一次,操作后必须 break结束循环 否则会抛出异常
*/
/*for (Object obj: alist) {
if (obj.equals("a")){
alist.remove(obj);
break;
}
}
System.out.println(alist);*/
/*
Iterator 集合迭代器
*/
Iterator iterator = alist.iterator();
//hasNext() 检测迭代器中是否含有元素
while (iterator.hasNext()){
Object obj =iterator.next();
if (obj.equals("a")){
iterator.remove();
break;
}
}
System.out.println(alist);
}
}