Java – Nivel 3 – Test 10

Java – Nivel 3 – Test 10

Test-10 Java Nivel 3

¿Cuál es el resultado de la siguiente operación?


Integer.bitCount(21) + Integer.numberOfTrailingZeros(24)

¿Cuál es el resultado de Math.round(Math.random() * 10)?

¿Cuál es la salida del siguiente código?

List numbers = Arrays.asList(1, 2, 3, 4, 5);
int result = numbers.stream()
                .filter(n -> n % 2 == 0)
                .mapToInt(n -> n * n)
                .sum();
System.out.println(result);

¿Qué hace el método replaceAll() en un Map?

¿Qué interfaz funcional se utiliza para representar una operación que acepta un argumento y produce un resultado booleano?

¿Qué imprimirá el siguiente código?


int x = 5, y = 10;
System.out.println(x > 3 ? y > 8 ? x + y : x - y : y);

¿Qué método se usa para ordenar un array de objetos usando un comparador personalizado en Java?

¿Qué hace el método flatMap() en un Stream?

¿Cuál es el resultado de la siguiente expresión?

Stream.of("a", "bb", "ccc", "dddd").collect(Collectors.groupingBy(String::length, Collectors.mapping(String::toUpperCase, Collectors.toList())))

¿Cuál es la salida del siguiente código?


String str = "Java";
System.out.println(str.chars().mapToObj(ch -> String.valueOf((char)(ch + 1))).collect(Collectors.joining()));

Tests similares

Respuestas:


1. ¿Cuál es la salida del siguiente código?

List numbers = Arrays.asList(1, 2, 3, 4, 5);

int result = numbers.stream()

                .filter(n -> n % 2 == 0)

                .mapToInt(n -> n * n)

                .sum();

System.out.println(result);

  • Respuesta Correcta:
    20
  • Explicación:
    • filter(n -> n % 2 == 0): Filtra solo los números pares: [2,4][2, 4][2,4].
    • mapToInt(n -> n * n): Eleva al cuadrado cada número: [4,16][4, 16][4,16].
    • sum(): Suma los cuadrados: 4+16=204 + 16 = 204+16=20.

2. ¿Qué imprimirá el siguiente código?

int x = 5, y = 10;

System.out.println(x > 3 ? y > 8 ? x + y : x – y : y);

  • Respuesta Correcta:
    15
  • Explicación:
    • x > 3 es verdadero, por lo que evalúa la rama del y > 8.
    • y > 8 es verdadero, por lo que se evalúa x + y: 5+10=155 + 10 = 155+10=15.

3. ¿Cuál es el resultado de la siguiente expresión?

Stream.of(«a», «bb», «ccc», «dddd»)

    .collect(Collectors.groupingBy(

        String::length,

        Collectors.mapping(String::toUpperCase, Collectors.toList())

    ));

  • Respuesta Correcta:
    {1=[A], 2=[BB], 3=[CCC], 4=[DDDD]}
  • Explicación:
    • groupingBy(String::length): Agrupa las cadenas por su longitud.
    • mapping(String::toUpperCase, Collectors.toList()): Convierte cada cadena en mayúsculas y las almacena en listas.
    • Resultado:
      • Longitud 111: [A].
      • Longitud 222: [BB].
      • Longitud 333: [CCC].
      • Longitud 444: [DDDD].

4. ¿Qué hace el método replaceAll() en un Map?

  • Respuesta Correcta:
    Aplica una función a cada entrada del mapa, reemplazando el valor
  • Explicación:
    • replaceAll() permite aplicar una función a cada par clave-valor del mapa, actualizando el valor según el resultado de la función.

5. ¿Qué método se usa para ordenar un array de objetos usando un comparador personalizado en Java?

  • Respuesta Correcta:
    Arrays.sort(array, comparator)
  • Explicación:
    • Arrays.sort(array, comparator) ordena un array usando un comparador proporcionado por el usuario.

6. ¿Qué hace el método flatMap() en un Stream?

  • Respuesta Correcta:
    Aplana streams anidados en un solo stream
  • Explicación:
    • flatMap() transforma cada elemento en un stream y luego aplana todos los streams en uno solo.

7. ¿Cuál es el resultado de la siguiente operación?

Integer.bitCount(21) + Integer.numberOfTrailingZeros(24)

  • Respuesta Correcta:
    7
  • Explicación:
    • Integer.bitCount(21): Cuenta los bits en 21=1010121 = 1010121=10101, que tiene 333 bits en 111.
    • Integer.numberOfTrailingZeros(24): 24=1100024 = 1100024=11000, termina con 333 ceros.
    • Resultado: 3+3=73 + 3 = 73+3=7.

8. ¿Cuál es la salida del siguiente código?

String str = «Java»;

System.out.println(str.chars().mapToObj(ch -> String.valueOf((char)(ch + 1))).collect(Collectors.joining()));

  • Respuesta Correcta:
    Kbwb
  • Explicación:
    • chars() convierte cada carácter en su código Unicode.
    • ch + 1 incrementa el valor Unicode de cada carácter:
      • J → K, a → b, v → w, a → b.
    • joining() combina los caracteres: Kbwb.

9. ¿Cuál es el resultado de Math.round(Math.random() * 10)?

  • Respuesta Correcta:
    Un número entre 0 y 10
  • Explicación:
    • Math.random() genera un número entre 0.00.00.0 y 1.01.01.0.
    • Multiplicarlo por 101010 da un rango entre 0.00.00.0 y 10.010.010.0.
    • Math.round() redondea al entero más cercano, produciendo un número entre 000 y 101010.

10. ¿Qué interfaz funcional se utiliza para representar una operación que acepta un argumento y produce un resultado booleano?

  • Respuesta Correcta:
    Predicate
  • Explicación:
    • Predicate<T> representa una operación que toma un argumento de tipo TTT y devuelve un valor booleano. Es ideal para evaluaciones de condiciones.

Deja un comentario