Las instrucciones condicionales nos permiten realizar lógica en función del resultado de una variable o condición, en este primer apartado veremos las condiciones if-else.

La confición if

La condición if es de las más habituales y realizará una función o varias solo si la condición que hemos generado es verdadera.

fun main(args: Array<String>) {
    var result = add(5, 10)

    if(result > 10){
        println("El resultado es mayor que 10")
    }
}

fun add(firsNumber: Int, secondNumber: Int) : Int = firsNumber + secondNumber

Simplemente debemos añadir la condición entre paréntesis. No solo podemos usar operadores como <, >, = sino que podemos comparar String a través del doble igual «==»

var name = "Aris"

if(name == ("Aris")){
    println("Se llama Aris")
}

If-Else

Hay veces que necesitaremos más de un if, y por eso está la palabra clave else que actuará como segundo condicional.

var name = "Aris"

  if(name == ("Aris")){
      println("Se llama Aris")
  }else{
      println("No se llama Aris")
  }

El funcionamiento está muy claro, si no pasa la condición estipulada, irá directa al else, así por ejemplo no tenemos que hacer 2 if, uno comprobando si el nombre es igual, y otro comprobando si es diferente.

Anidamiento

Aunque no es la práctica más correcta y no deberíamos abusar, en determinadas ocasiones necesitamos más condiciones, y aunque podríamos recurrir a otras instrucciones, lo podemos hacer con if.

if(animal == "dog"){
        println("Es un perro")
    }else if(animal == "cat"){
        println("Es un gato")
    }else if(animal == "bird"){
        println("Es un pájaro")
    }else{
        println("Es otro animal")
    }

Aquí hemos hecho varios anidamientos y aunque funciona, no es lo más correcto.

Para poder usar más de una condición a la vez gracias a los operadores and (&&) y or (||).

//solo entrará si cumple ambas condiciones
    if(animal == "dog" && raza == "labrador"){
        println("Es un perro de raza labrador")
    }

//Entrará si es verdadera una de las condiciones
    if(animal == "dog" || animal == "gato"){
        println("Es un perro o un gato")
    }

Continúa con el curso: Capítulo 8 – Expresión when en Kotlin