Recursividad. Filter
Clase 44 de 47 • Curso Básico de Kotlin 2019
Contenido del curso
Conceptos básicos
- 4

Variables vs. Objetos
05:25 min - 5

Operadores en Kotlin
07:09 min - 6

Otros Operadores en Kotlin
01:17 min - 7

Tipos de variables: var, val y const
05:35 min - 8

Ejercicio var val const
13:30 min - 9

Programación Funcional: Funciones Puras e Inmutabilidad
01:48 min - 10

Strings
10:47 min - 11

Conversión de tipos de datos
00:43 min - 12

Rangos
05:47 min - 13

If y when en Kotlin
09:13 min - 14

Bucles while y do while
10:57 min - 15

Ciclos for y foreach en Kotlin
01:08 min - 16

Break, Continue y Labels
04:24 min - 17

Valores Nulos y Double Bang
11:05 min - 18

Operador Elvis
03:50 min - 19

Ejercicios con Null Safety y operador Elvis
11:26 min - 20

Reto 1
00:47 min
Conceptos avanzados
Programación Orientada a Objetos
- 29

Clases
06:25 min - 30

Ejercicio de clases
10:04 min - 31

Modificadores de acceso
11:13 min - 32

Getters y Setters
08:37 min - 33

El Get() y Set() propio de Kotlin
12:35 min - 34

Data class en Kotlin
08:49 min - 35

Método Constructor
08:42 min - 36

Herencia y polimorfismo
11:27 min - 37

Aplicando herencia y polimorfismo
15:53 min - 38

Clases abstractas
08:07 min - 39

Interfaces
11:15 min - 40

Reto 3
00:39 min
Programación Funcional
Bonus
La función filter es un claro ejemplo de cómo se utilizan las funciones de orden superior.
Una función filter recibirá como parámetro una función en forma de lambda:
{ parametros -> acciones }
Esta lambda puede ser mucho más simplificada si utilizamos el auxiliar it de esta forma podemos poner las acciones únicamente sin necesidad de expresar los parámetros.
El nombre filter indicará filtrar datos que cumplan la condición especificada. Podemos colocar una comparación lógica, o utilizar un método, pero debemos estar conscientes que el resultado siempre será una nueva colección de datos en lugar del valor lógico en sí.
val numbersInt = listOf(4,3,2) numbersInt.filter { it % 2 == 0 } Este será el resultado: [4,2]
Filtremos usando una función que devuelva un valor lógico:
val words = listOf("Oasis","Hola", "Holanda", "Objeto") words.filter { it.startsWith('O') } Este será el resultado: [Oasis, Objeto]
Similar a Filter, existen otras funciones que nos ayudaran a "filtrar" o a dejar lo más limpia y clara la lista inicial. Hay unas de ordenamiento, otras que nos permiten tomar los primeros elementos, etc. Escribe en la sección de discusiones cuáles pueden ser de utilidad para manejar y limpiar datos.