Home > Mobile >  if else return in kotlin
if else return in kotlin

Time:07-13

enter image description here

Error :

Kotlin: Type mismatch: inferred type is String but Unit was expected

code :

fun main() {
    val a = 2

    var data: String = if (a != 2) {
        return "Hello"
    } else {
        return "World"
    }

}

CodePudding user response:

Your code should be like this

var data: String = if (a != 2) {
        "Hello"
    } else {
        "World"
    }

By using return you are returning from the main function which has the return type set to "Unit". If you want to display the text, you should then call println(data).

Fun fact, when used like this you can even ignore the "{}" and make it one line like this :

var data: String = if (a != 2) "Hello" else "World"
  • Related