07 Programación Funcional y Lambdas Flashcards

1
Q

¿Qué es la programación funcional en Java?

A

Un paradigma que trata funciones como ciudadanos de primera clase.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Qué es una expresión lambda en Java?

A

Una función anónima que puede usarse como argumento o valor de retorno.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Cuál es la sintaxis básica de una lambda?

A

(parametros) -> {cuerpo de la función}.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué interfaces funcionales existen en Java?

A

Function, Consumer, Supplier, Predicate, entre otras.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué es una FunctionalInterface?

A

Una interfaz con un único método abstracto, usada en programación funcional.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Qué hace Predicate<T>?

A

Representa una función booleana con un parámetro.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Qué hace Function<T, R>?

A

Representa una función que recibe un argumento y devuelve un resultado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Qué hace Consumer<T>?

A

Representa una operación que acepta un argumento pero no devuelve resultado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Qué hace Supplier<T>?

A

Provee un valor sin tomar argumentos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Qué hace BiFunction<T, U, R>?

A

Representa una función que toma dos argumentos y devuelve un resultado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué es Method Reference en Java?

A

Una forma de referenciar métodos existentes con ::.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Cuál es la diferencia entre lambda y method reference?

A

Las lambda definen funciones inline; los method reference reutilizan métodos existentes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Qué hace Stream API?

A

Procesa colecciones de datos de manera funcional.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué hace map() en un Stream?

A

Transforma cada elemento de la secuencia.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Qué hace filter() en un Stream?

A

Filtra elementos según una condición.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

¿Qué hace reduce() en un Stream?

A

Combina elementos en un solo resultado.

17
Q

¿Qué hace collect() en un Stream?

A

Convierte un Stream en una colección o estructura de datos.

18
Q

¿Qué diferencia hay entre forEach() y map()?

A

forEach() itera sin modificar, map() transforma y devuelve un nuevo Stream.

19
Q

¿Qué es Optional en Java?

A

Una clase contenedora que evita NullPointerException.

20
Q

¿Cómo manejar valores vacíos con Optional?

A

Usando ifPresent(), orElse(), orElseGet() o orElseThrow().