Introducció
En aquest tema, aprendrem els conceptes bàsics de Kotlin, incloent-hi com declarar variables i els diferents tipus de dades disponibles. Aquestes són les bases fonamentals que necessitaràs per escriure qualsevol programa en Kotlin.
Variables en Kotlin
Declaració de Variables
En Kotlin, podem declarar variables utilitzant dues paraules clau: val
i var
.
val
: Utilitzada per declarar variables inmutables (constants). Un cop assignat un valor, no es pot canviar.var
: Utilitzada per declarar variables mutables. El valor pot ser canviat després de la seva assignació inicial.
Exemple:
val nombre: Int = 10 // Variable immutable var nom: String = "Joan" // Variable mutable // Intentar canviar el valor de 'nombre' donarà un error // nombre = 20 // Error: Val cannot be reassigned // Canviar el valor de 'nom' és permès nom = "Maria"
Inferència de Tipus
Kotlin és un llenguatge amb tipatge estàtic, però té una característica anomenada inferència de tipus, que permet al compilador deduir el tipus de la variable a partir del valor assignat.
Exemple:
val edat = 25 // El compilador dedueix que 'edat' és de tipus Int var ciutat = "Barcelona" // El compilador dedueix que 'ciutat' és de tipus String
Tipus de Dades en Kotlin
Kotlin proporciona una varietat de tipus de dades per treballar. A continuació, es mostren alguns dels tipus de dades més comuns:
Tipus Numèrics
Byte
: 8 bitsShort
: 16 bitsInt
: 32 bitsLong
: 64 bitsFloat
: 32 bits, amb precisió simpleDouble
: 64 bits, amb precisió doble
Exemple:
val byteValue: Byte = 1 val shortValue: Short = 10 val intValue: Int = 100 val longValue: Long = 1000L val floatValue: Float = 10.5F val doubleValue: Double = 20.5
Tipus de Caràcter i Cadena
Char
: Representa un únic caràcter.String
: Representa una seqüència de caràcters.
Exemple:
Tipus Booleà
Boolean
: Representa un valor lògic que pot sertrue
ofalse
.
Exemple:
Conversió de Tipus
En Kotlin, les conversions de tipus no es fan automàticament. Cal utilitzar funcions de conversió explícites.
Exemple:
val x: Int = 10 val y: Long = x.toLong() // Conversió explícita d'Int a Long val z: String = x.toString() // Conversió explícita d'Int a String
Exercicis Pràctics
Exercici 1: Declaració de Variables
Declara una variable immutable pi
amb el valor 3.14
i una variable mutable nom
amb el valor "Kotlin"
. Després, intenta canviar el valor de pi
i observa què passa.
Solució:
val pi: Double = 3.14 var nom: String = "Kotlin" // pi = 3.14159 // Error: Val cannot be reassigned nom = "Kotlin Language"
Exercici 2: Inferència de Tipus
Declara una variable edat
amb el valor 30
sense especificar el tipus. Després, declara una variable ciutat
amb el valor "Barcelona"
sense especificar el tipus. Imprimeix els valors i els tipus de les variables.
Solució:
val edat = 30 val ciutat = "Barcelona" println("Edat: $edat, Tipus: ${edat::class.simpleName}") println("Ciutat: $ciutat, Tipus: ${ciutat::class.simpleName}")
Exercici 3: Conversió de Tipus
Declara una variable altura
de tipus Double
amb el valor 1.75
. Converteix aquesta variable a String
i imprimeix el resultat.
Solució:
val altura: Double = 1.75 val alturaString: String = altura.toString() println("Altura com a String: $alturaString")
Resum
En aquesta secció, hem après com declarar variables en Kotlin utilitzant val
i var
, la inferència de tipus, els diferents tipus de dades disponibles i com fer conversions de tipus. Aquests conceptes són fonamentals per començar a programar en Kotlin i ens preparen per a temes més avançats.
En el següent tema, explorarem el flux de control en Kotlin, incloent-hi condicionals i bucles.
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ó