Java – Nivel 3 – Test 3

Java – Nivel 3 – Test 3

Test-3 Java Nivel 3

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


List list = new ArrayList(Arrays.asList(1, 2, 3, 4, 5));
list.removeIf(n -> n % 2 == 0);
System.out.println(list);

¿Qué método se usa para crear una vista sincronizada de una colección en Java?

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

¿Qué interfaz funcional se utiliza para representar una operación que acepta un argumento y no devuelve nada?

¿Cuál es el resultado de Math.cbrt(27) + Math.atan2(1, 1)?

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


Optional opt = Optional.of("Java"); System.out.println(opt.map(String::length).orElse(0));

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


(7 ^ 5) & (~2 | 1)

¿Qué imprimirá el siguiente código?


int i = 0;
System.out.println(++i == i++ ? i-- : ++i);

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


Stream.of("a", "b", "c").reduce("", (s1, s2) -> s1 + s2.toUpperCase())

¿Qué hace el operador instanceof en Java?

Tests similares

Respuestas:


1. ¿Cuál es el resultado de Math.cbrt(27) + Math.atan2(1, 1)?

  • Respuesta Correcta: 4.785398
  • Explicación:
    • Math.cbrt(27) calcula la raíz cúbica de 27, que es 3.0.
    • Math.atan2(1, 1) calcula el ángulo en radianes del punto (1, 1), que es aproximadamente 0.785398.
    • La suma es 3.0 + 0.785398 = 4.785398.

2. ¿Qué hace el método computeIfAbsent() en un Map?

  • Respuesta Correcta:
    Calcula un valor si la clave no existe y lo agrega al mapa
  • Explicación:
    • computeIfAbsent(key, mappingFunction) calcula el valor para la clave dada solo si no existe una entrada en el mapa para esa clave.

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

Optional opt = Optional.of(«Java»);

System.out.println(opt.map(String::length).orElse(0));

  • Respuesta Correcta: 4
  • Explicación:
    • Optional.of(«Java») crea un Optional con el valor «Java».
    • opt.map(String::length) mapea el valor a su longitud, que es 4.
    • orElse(0) no es necesario aquí porque ya existe un valor. El resultado es 4.

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

List list = new ArrayList(Arrays.asList(1, 2, 3, 4, 5));

list.removeIf(n -> n % 2 == 0);

System.out.println(list);

  • Respuesta Correcta: [1, 3, 5]
  • Explicación:
    • removeIf(n -> n % 2 == 0) elimina los números pares.
    • Por lo tanto, los números que permanecen son [1, 3, 5].

5. ¿Qué interfaz funcional se utiliza para representar una operación que acepta un argumento y no devuelve nada?

  • Respuesta Correcta:
    Consumer
  • Explicación:
    • La interfaz Consumer representa una operación que toma un argumento y no devuelve nada (solo realiza efectos secundarios).

6. ¿Cuál es el resultado de la siguiente operación?
(7 ^ 5) & (~2 | 1)

  • Respuesta Correcta: 3
  • Explicación:
    • 7 ^ 5 (XOR bit a bit) da 2 (0111 ^ 0101 = 0010).
    • ~2 es el complemento a nivel de bits de 2, que da -3 (en complemento a dos).
    • -3 | 1 (OR bit a bit) da -3 (111…1101).
    • 2 & -3 (AND bit a bit) da 2.
    • El resultado final es 3.

7. ¿Qué método se usa para crear una vista sincronizada de una colección en Java?

  • Respuesta Correcta:
    Collections.synchronizedCollection()
  • Explicación:
    • Collections.synchronizedCollection() crea una vista sincronizada de cualquier colección para ser utilizada en entornos multihilo.

8. ¿Qué hace el operador instanceof en Java?

  • Respuesta Correcta:
    Verifica si un objeto es una instancia de una clase específica
  • Explicación:
    • instanceof comprueba si un objeto es una instancia de una clase o de una subclase de esa clase.

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

Stream.of(«a», «b», «c»).reduce(«», (s1, s2) -> s1 + s2.toUpperCase())

  • Respuesta Correcta: «ABC»
  • Explicación:
    • reduce(«», (s1, s2) -> s1 + s2.toUpperCase()) acumula las letras, convirtiéndolas a mayúsculas, por lo que el resultado es «ABC».

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

int i = 0;

System.out.println(++i == i++ ? i– : ++i);

  • Respuesta Correcta: 2
  • Explicación:
    • ++i incrementa i a 1 antes de compararlo.
    • i++ usa i (que es 1) y luego lo incrementa a 2.
    • La comparación 1 == 1 es true, por lo que se ejecuta i–, disminuyendo i a 1.
    • Finalmente, ++i incrementa i a 2. El resultado es 2.

Deja un comentario