Usare gli switch in Kotlin

Mattepuffo's logo
Usare gli switch in Kotlin

Usare gli switch in Kotlin

In Kotlin, in verità, l'istruzione switch viene sostituita dall'istruzione when.

Ma non è l'unica differenza che troviamo al riguardo rispetto a Java.

Vediamo un paio di esempi; partiamo dalla nostra ormai classica classe Person:

class Person constructor(var name: String, var email: String?) {
    var age: Int = 0;

    constructor(name: String, email: String, age: Int) : this(name, email) {
        this.age = age
    }

    fun maggiorenne(): Boolean {
        return age >= 18
    }

    fun teenager(): Boolean = age in 10..19
}

Da qui, veidamo due esempi di when:

fun main(args: Array) {
    var p2 = Person("marco", "mr@email.com", 17)

    when (p2.age) {
        in 0..9 -> println("Bambino")
        in 10..17 -> println("Teenager minorenne")
        in 18..19 -> println("Teenager maggiorenne")
        else -> println("Adulto")
    }

    val personType =   when (p2.age) {
        in 0..9 -> "Bambino"
        in 10..17 -> "Teenager minorenne"
        in 18..19 -> "Teenager maggiorenne"
        else -> "Adulto"
    }

    println(personType)
}

Nel primo caso stampiamo direttamente in console; nel secondo caso assegniamo il valore ad una varibile e poi la stampiamo.

Il risultato in console sarà ovviamente lo stesso, ma così potete capire meglio le potenzialità di base di questa istruzione.

Enjoy!


Condividi

Commentami!