Java – Nivel 3 – Test 3
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.