En aquest tema, aprendrem com controlar el flux d'execució del nostre programa utilitzant estructures condicionals i bucles en Kotlin. Aquestes eines són fonamentals per a la programació, ja que ens permeten prendre decisions i repetir accions de manera eficient.
- Condicionals
1.1. if
i else
L'estructura if
s'utilitza per executar un bloc de codi si una condició és certa. L'estructura else
s'utilitza per executar un bloc de codi alternatiu si la condició no és certa.
fun main() { val x = 10 if (x > 5) { println("x és més gran que 5") } else { println("x no és més gran que 5") } }
1.2. else if
Podem utilitzar else if
per comprovar múltiples condicions.
fun main() { val x = 10 if (x > 15) { println("x és més gran que 15") } else if (x > 5) { println("x és més gran que 5 però menor o igual a 15") } else { println("x és menor o igual a 5") } }
1.3. Expressió if
En Kotlin, if
és una expressió, la qual cosa significa que pot retornar un valor.
fun main() { val x = 10 val result = if (x > 5) "Gran" else "Petit" println(result) // Imprimeix "Gran" }
- Quan (When)
L'expressió when
és una alternativa més poderosa a if-else if-else
.
fun main() { val x = 2 when (x) { 1 -> println("x és 1") 2 -> println("x és 2") 3 -> println("x és 3") else -> println("x no és 1, 2 o 3") } }
2.1. when
com a expressió
Igual que if
, when
també pot retornar un valor.
fun main() { val x = 2 val result = when (x) { 1 -> "Un" 2 -> "Dos" 3 -> "Tres" else -> "Altres" } println(result) // Imprimeix "Dos" }
- Bucles
3.1. for
El bucle for
s'utilitza per iterar sobre una col·lecció o un rang.
3.2. for
amb rangs
Podem utilitzar rangs per iterar sobre una seqüència de números.
3.3. while
i do-while
El bucle while
repeteix un bloc de codi mentre una condició és certa.
El bucle do-while
és similar a while
, però garanteix que el bloc de codi s'executi almenys una vegada.
Exercicis Pràctics
Exercici 1: Condicionals
Escriu una funció que prengui un nombre enter i retorni "Positiu" si el nombre és més gran que zero, "Negatiu" si és menor que zero, i "Zero" si és igual a zero.
fun determinarSigno(num: Int): String { return if (num > 0) { "Positiu" } else if (num < 0) { "Negatiu" } else { "Zero" } }
Exercici 2: when
Escriu una funció que prengui una lletra i retorni si és una vocal o una consonant.
fun determinarLletra(lletra: Char): String { return when (lletra) { 'a', 'e', 'i', 'o', 'u' -> "Vocal" else -> "Consonant" } }
Exercici 3: Bucles
Escriu una funció que imprimeixi els nombres parells de l'1 al 10.
Resum
En aquesta secció, hem après com utilitzar estructures condicionals (if
, else if
, else
, when
) i bucles (for
, while
, do-while
) per controlar el flux d'execució dels nostres programes en Kotlin. Aquestes eines són essencials per a la programació i ens permeten crear aplicacions més dinàmiques i flexibles. A la següent secció, explorarem les funcions i les lambdas en Kotlin.
Curs de Programació en Kotlin
Mòdul 1: Introducció a Kotlin
- Introducció a Kotlin
- Configuració de l'Entorn de Desenvolupament
- Conceptes Bàsics de Kotlin: Variables i Tipus de Dades
- Flux de Control: Condicionals i Bucles
- Funcions i Lambdas
Mòdul 2: Programació Orientada a Objectes en Kotlin
- Classes i Objectes
- Herència i Interfícies
- Modificadors de Visibilitat
- Classes de Dades i Classes Segellades
- Declaracions d'Objectes i Objectes Companys
Mòdul 3: Funcions Avançades de Kotlin
- Col·leccions i Genèrics
- Funcions d'Extensió
- Funcions d'Ordre Superior i Programació Funcional
- Coroutines i Programació Asíncrona
- DSL (Llenguatge Específic de Domini) en Kotlin
Mòdul 4: Kotlin per al Desenvolupament d'Android
- Introducció al Desenvolupament d'Android amb Kotlin
- Construcció d'Interfícies d'Usuari
- Gestió de l'Entrada de l'Usuari
- Xarxes i Emmagatzematge de Dades
- Proves i Depuració