Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Agregando más de un elemento al mismo tiempo...

Este punto me retó a investigar de qué manera podríamos agregar más de un elemento a un MAP en una sola escritura de código para no repetir el.put() para cada clave - valor que queremos agregar...

Acá está el resultado y es .putAll() + Map.of() ==>

        empleados.putAll(Map.of(
                5, "Juan",
                6,"María",
                7, "Carlos",
                8, "Ana"
        ));
        
        System.out.println("Lista de Empleados: "+ empleados);
        

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Aunque caí en cuenta que el ejercicio hablaba de "List" .. me plantee el mismo interrogante de si podría ahacerlo en un solo código, y encontré esta solución:

List<String> empleados = new ArrayList<>();
        empleados.add("María");
        empleados.add("Juan");
        empleados.add("María");

        System.out.println("Lista inicial: " + empleados);
        List<String> nuevosEmpleados = Arrays.asList(
                "Juan2",
                "María2",
                "Carlos",
                "Ana"  );

        empleados.addAll(3, nuevosEmpleados);

        System.out.println("Lista Actualizada de Empelados: " + empleados);

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

1 respuesta

¡Hola, Fabio, espero que estés bien!

Has encontrado una manera muy eficiente de agregar múltiples elementos a un Map y a una List en Java. Usar putAll() junto con Map.of() es una excelente forma de agregar varios pares clave-valor de una sola vez, y addAll() es perfecto para listas.

Para el ejercicio que mencionas, donde necesitas agregar nombres a una lista, tu solución usando addAll() es adecuada. Aquí tienes un ejemplo simplificado basado en tu descripción:

List<String> empleados = new ArrayList<>(Arrays.asList("Juan", "María", "Carlos", "Ana"));
System.out.println("Lista de empleados: " + empleados);

Esto creará e imprimirá la lista de empleados tal como se espera en el ejercicio.

Espero que esta explicación te sea útil y te felicito por tu iniciativa de investigar y mejorar tus habilidades. ¡Bons estudios!