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 | ||
|
kotlin [2025/01/07 19:10] enric_mieza_sanchez |
kotlin [2026/09/23 14:42] (actual) enric_mieza_sanchez |
||
|---|---|---|---|
| Línia 126: | Línia 126: | ||
| </ | </ | ||
| </ | </ | ||
| + | |||
| + | Si estem en codi compilat, ens donarà un error en temps de compilació (menys greu que un error en // | ||
| \\ | \\ | ||
| Línia 219: | Línia 221: | ||
| \\ | \\ | ||
| - | ====== Objectes ===== | + | ===== Objectes ===== |
| Els constructors es defineixen amb la paraula '' | Els constructors es defineixen amb la paraula '' | ||
| Línia 244: | Línia 246: | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | \\ | ||
| + | |||
| + | ===== Llistes i Arrays ===== | ||
| + | |||
| + | Per inicialitzar una llista i iterar-la es pot fer de la següent manera: | ||
| + | |||
| + | <code kotlin> | ||
| + | val llista = mutableListOf(" | ||
| + | llista.add(" | ||
| + | for( elem in llista ) { | ||
| + | println( elem ) | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | \\ | ||
| + | |||
| + | ===== this i this@class ===== | ||
| + | |||
| + | El '' | ||
| + | |||
| + | Si volem apuntar a un altre objecte aniuat ho podem fer amb @ | ||
| + | |||
| + | Si en Java teniem: | ||
| + | |||
| + | <code java> | ||
| + | class Fora { | ||
| + | class Dintre { | ||
| + | private void fes_algo() { | ||
| + | //... | ||
| + | crida_externa( Fora.this ); | ||
| + | //... | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | En Kotlin tindrem: | ||
| + | |||
| + | <code kotlin> | ||
| + | class Fora { | ||
| + | class Dintre { | ||
| + | private fun fes_algo() { | ||
| + | //... | ||
| + | crida_externa( this@Fora ); | ||
| + | //... | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | El cas més típic en Android és: '' | ||
| + | |||
| + | \\ | ||
| + | |||
| + | ===== apply ===== | ||
| + | |||
| + | El mètode apply és una funció d’àmbit (scope function) de la llibreria estàndard de Kotlin. Serveix per configurar un objecte just després de crear-lo, sense necessitat de repetir el seu nom a cada línia. Molt útil per compactar codi. | ||
| + | |||
| + | <code kotlin> | ||
| + | val paint = Paint().apply { | ||
| + | color = Color.RED | ||
| + | strokeWidth = 5f | ||
| + | } | ||
| + | </ | ||
| + | |||