Uso bucle foreach a través de la Colección colección

Utilizar un bucle foreach itera Java 5 para proporcionar un conjunto de elementos, sino también más conveniente. Se demuestra el uso de bucle foreach para iterar a través de los elementos de la colección.

public class ForeachTest {
    public static void main(String[] args) {
        // 创建一个集合
        Collection objs = new HashSet();
        objs.add("百度Java教程");
        objs.add("百度C语言教程");
        objs.add("百度C++教程");
        for (Object obj : objs) {
            // 此处的obj变量也不是集合元素本身
            String obj1 = (String) obj;
            System.out.println(obj1);
            if (obj1.equals("百度Java教程")) {
                // 下面代码会引发 ConcurrentModificationException 异常
                objs.remove(obj);
            }
        }
        System.out.println(objs);
    }
}

La salida es:

百度C++教程
百度C语言教程
百度Java教程
[百度C++教程, 百度C语言教程]

El código anterior utiliza un bucle foreach para iterar sobre los elementos de la colección Collection más concisa, que es para llevar las ventajas de JDK 1.5 bucle foreach. Y acceder a la colección de elementos utilizando una interfaz Iterator iterativo Del mismo modo, el elemento de bucle foreach variable de iteración en sí no está establecido, el sistema simplemente una colección de elementos se asignan secuencialmente al valor de la variable de iteración, modificando así variable de iteración de bucle foreach en valor y no importancia práctica.

Del mismo modo, cuando el acceso elementos de la colección utilizan la iteración del bucle foreach, la colección no se puede cambiar, de lo contrario llevará a ConcurrentModificationException excepción. Por lo tanto, el procedimiento anterior en la línea 14 de código iniciará la excepción.

Publicados 457 artículos originales · ganado elogios 94 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_45743799/article/details/104716050
Recomendado
Clasificación