Resumen de varias formas de atravesar HashMap

1. Utilice Iterator para atravesar HashMap

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap
Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
    
    
    Map.Entry<String, String> entry = iterator.next();
    String key = entry.getKey();
    String value = entry.getValue();
    // 打印key和value
    System.out.println(key + " : " + value);
}

2. Utilice forEach para atravesar HashMap

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap
map.forEach((key, value) -> {
    
    
    // 打印key和value
    System.out.println(key + " : " + value);
});


3. Utilice el bucle for-each para recorrer el conjunto de claves o los valores de HashMap.

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap的keySet
for (String key : map.keySet()) {
    
    
    String value = map.get(key);
    // 打印key和value
    System.out.println(key + " : " + value);
}

// 遍历HashMap的values
for (String value : map.values()) {
    
    
    // 打印value
    System.out.println(value);
}

4. Utilice Stream API para atravesar HashMap

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap
map.entrySet().stream().forEach(entry -> {
    
    
    String key = entry.getKey();
    String value = entry.getValue();
    // 打印key和value
    System.out.println(key + " : " + value);
});

5. Atravesar HashMap usando una matriz de pares clave-valor

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 获取键-值对数组
Object[] entries = map.entrySet().toArray();
for (Object entry : entries) {
    
    
    Map.Entry<String, String> e = (Map.Entry<String, String>) entry;
    String key = e.getKey();
    String value = e.getValue();
    // 打印key和value
    System.out.println(key + " : " + value);
}

En el desarrollo de Java, el uso de iteradores (Iterator) para atravesar HashMap es la forma más común. Debido a que el iterador no necesita cargar todo el HashMap en la memoria, solo cargará el siguiente elemento cuando sea necesario, por lo que se puede evitar el problema del desbordamiento de la memoria. Además, el iterador proporciona algunos métodos convenientes, como el método remove() para eliminar el elemento iterado actualmente.

Además, también es una forma común de utilizar el bucle for-each para atravesar el conjunto de claves o los valores de HashMap. La ventaja de este método es que es simple y fácil de entender, requiere una pequeña cantidad de código y es adecuado para escenarios que solo necesitan acceder a claves o valores.

Aunque también se pueden utilizar otros métodos, rara vez se utilizan en el desarrollo real.

Supongo que te gusta

Origin blog.csdn.net/qq_45796667/article/details/129918676
Recomendado
Clasificación