Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
| Ambdós costats versió prèvia Revisió prèvia Següent revisió | Revisió prèvia | ||
|
funcions_lambda [2026/09/21 17:49] enric_mieza_sanchez [Exemples en Kotlin i Android] |
funcions_lambda [2026/09/21 18:16] (actual) enric_mieza_sanchez [Funcions Lambda] |
||
|---|---|---|---|
| Línia 5: | Línia 5: | ||
| **Una interfície funcional** és un concepte de Java (formalitzat a Java 8) que **designa una interfície amb un únic mètode abstracte**. Això permet que una expressió lambda, una referència a mètode o una classe anònima la puguin implementar directament, | **Una interfície funcional** és un concepte de Java (formalitzat a Java 8) que **designa una interfície amb un únic mètode abstracte**. Això permet que una expressió lambda, una referència a mètode o una classe anònima la puguin implementar directament, | ||
| - | Actualment les funcions lambda ens resulten molt útils per implementar interfícies funcionals de forma concisa i llegible. | + | Actualment les funcions lambda ens resulten molt útils per implementar interfícies funcionals de forma concisa i llegible. En desenvolupaments amb moltes // |
| {{tag> #Dam #DamMp08 #DamMp08Uf1 # | {{tag> #Dam #DamMp08 #DamMp08Uf1 # | ||
| Característiques principals: | Característiques principals: | ||
| - | * Sintaxi reduïda: Eliminen | + | * Sintaxi reduïda: Eliminen |
| * Funcions anònimes: No necessiten nom | * Funcions anònimes: No necessiten nom | ||
| * Més llegibles: Especialment útils per // | * Més llegibles: Especialment útils per // | ||
| - | Sintaxi bàsica | + | Sintaxi bàsica |
| (paràmetres) -> { cos de la funció } | (paràmetres) -> { cos de la funció } | ||
| + | |||
| + | Sintaxi bàsica en Kotlin: | ||
| + | { paràmetres -> cos de la funció } | ||
| \\ | \\ | ||
| - | ===== Exemples en Java i Android ===== | + | ===== Exemples en Android ===== |
| + | |||
| + | Per implementar una // | ||
| - | Aquest seria el codi explícit per a Android en Java: | + | ==== Java ==== |
| + | Aquest seria el codi explícit per a Android en Java, creant l' | ||
| <code java> | <code java> | ||
| Línia 35: | Línia 42: | ||
| </ | </ | ||
| - | Si ho implementem en versió lambda ens quedaria | + | Si ho implementem en versió lambda ens quedaria |
| <code java> | <code java> | ||
| Línia 45: | Línia 52: | ||
| }); | }); | ||
| </ | </ | ||
| + | |||
| + | Podem utilitzar punters a '' | ||
| \\ | \\ | ||
| - | ===== Exemples en Kotlin | + | ==== Kotlin ==== |
| - | La definició explícita, sense lambda seria aquesta: | + | La definició explícita, sense lambda, seria aquesta: |
| <code kotlin> | <code kotlin> | ||
| val myButton = findViewById< | val myButton = findViewById< | ||
| Línia 61: | Línia 70: | ||
| </ | </ | ||
| - | I emprant | + | La peculiaritat en Kotlin és que una interfície com '' |
| + | |||
| + | Si emprem | ||
| <code kotlin> | <code kotlin> | ||
| Línia 70: | Línia 81: | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | En kotlin, fins i tot podriem eliminar el paràmetre '' | ||