Avatar ·

¿Cómo actualizar el valor por clave en HashMap? Guía detallada

¡Hola a todos! Soy nuevo en Java y no puedo entender HashMap. Tengo una tarea simple: almaceno datos de usuarios en un HashMap, donde la clave es el ID del usuario (Integer) y el valor es su nombre (String). Necesito reemplazar el nombre del usuario si ya existe, o agregar una nueva entrada si no existe tal ID. Aquí está mi código: ```java HashMap users = new HashMap<>(); users.put(1, "Anna"); users.put(2, "Boris"); users.put(3, "Viktor"); // Intento actualizar el usuario con ID = 2 users.put(2, "Boris Actualizado"); ``` Noté que `put()` realmente reemplaza el valor si la clave ya existe. Pero no estoy seguro de que este sea el enfoque correcto. Me parece que debería haber un método especial para actualizar, no el mismo `put()`. También he oído hablar del método `replace()`. ¿Cuál es la diferencia entre `put()` y `replace()`? ¿Cuándo usar cada uno? ¿Y qué sucede si intento reemplazar un valor con una clave que no existe? Necesito que el programa no falle con un error en ese caso.