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

Seleccion de empleados con nombres cortos

import java.util.List;
import java.util.stream.Collectors;

public class Funcionarios {
public static void main(String[] args) {

    List<String> funcionarios = List.of(
            "Ana", "Bruno", "Carlos", "Amanda", "Alice", "Daniel", "Caroline"
    );

    List<String> funcionariosFiltrados = funcionarios.stream()
            .filter(nombre -> nombre.length() <= 5)
            .collect(Collectors.toList());

    System.out.println(funcionariosFiltrados);
}

}

1 respuesta

Hola Alexis, espero que estés bien

¡Espero que estés bien! Parece que estás en el camino correcto con tu código para filtrar los nombres de los empleados que tienen cinco caracteres o menos. Sin embargo, he notado que tu salida actual no coincide exactamente con la salida esperada que mencionaste. El problema parece estar en la condición del filtro.

La condición nombre.length() <= 5 está correcta para filtrar nombres de hasta cinco caracteres. Sin embargo, el problema podría estar en la interpretación de los ejemplos proporcionados. Según el ejemplo de salida esperada, los nombres "Ana", "Bruno" y "Alice" son los que deberían aparecer. Asegúrate de que el filtro esté siendo aplicado correctamente y que la lista de entrada sea la misma que en el ejemplo.

Tu código debería funcionar correctamente si la lista de entrada es exactamente la misma que la del ejemplo. Aquí está el código completo, que debería darte la salida esperada:

import java.util.List;
import java.util.stream.Collectors;

public class Funcionarios {
    public static void main(String[] args) {

        List<String> funcionarios = List.of(
                "Ana", "Bruno", "Carlos", "Amanda", "Alice", "Daniel", "Caroline"
        );

        List<String> funcionariosFiltrados = funcionarios.stream()
                .filter(nombre -> nombre.length() <= 5)
                .collect(Collectors.toList());

        System.out.println(funcionariosFiltrados);
    }
}

Si ejecutas este código, deberías obtener la salida [Ana, Bruno, Alice], que es lo que se espera según el ejemplo proporcionado.

Espero que esto te ayude y buenos estudios!