Java – Nivel 3 – Test 3

Java – Nivel 3 – Test 3

Test-3 Java Nivel 3

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


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

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

¿Qué imprimirá el siguiente código?


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

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

¿Qué hace el operador instanceof en Java?

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

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


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

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

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


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

¿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);

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