Kotlin之when(含个小窍门)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cadi2011/article/details/85420629
Java版本

public void printChar(char cr){
        switch (cr){
            case 'a':
                System.out.println('a');
                break;
            case 'b':
                System.out.println('b');
                break;
            default:
                System.out.println("不支持打印该字符");
                break;
        }
    }

Kotlin版本

fun printChar(cr: Char) {
    when (cr) {
        'a' -> println('a')
        'b' -> {
            println('b')
        }
        else -> println("不支持打印该字符")
    }
}

0、when语法,像极了java中的switch语句,有点不太一样哦,就是略去了switch中每次case后面都要加入的break

1、单条语句可以省略代码块

重要的话要说三遍

若不知道如何在Kotlin中写一个相当简单的Java语句。这里有一个简单的诀窍,就是在AndroidStudio或者IntelliJ中的的java文件中编写一段代码,然后将其粘贴到kt文件中,它会自动转换为Kotlin(第一次的时候会有个对话框提示,问你是否要转换)

若不知道如何在Kotlin中写一个相当简单的Java语句。这里有一个简单的诀窍,就是在AndroidStudio的Java文件中编写一段代码,然后将其粘贴到kt文件中,它会自动转换为Kotlin

若不知道如何在Kotlin中写一个相当简单的Java语句。这里有一个简单的诀窍,就是在AndroidStudio的Java文件中编写一段代码,然后将其粘贴到kt文件中,它会自动转换为Kotlin

2、嘿嘿

判断的时候,支持多个条件匹配,用逗号隔开就行

也可以省略掉else,语法很赞

when (reason) {
            HANG_UP_DISCONNECT, HANG_UP_MY_TIME_OUT, HANG_UP_MY_NET_WEEK -> {
                Toast.makeText(this, getString(R.string.abnormal_network), Toast.LENGTH_SHORT).show()
            }
            HANG_UP_OTHER_TIME_OUT, HANG_UP_AGOR_TIME_OUT -> {
                Toast.makeText(this, getString(R.string.other_unstable_net_work), Toast.LENGTH_SHORT).show()
            }
            HANG_UP_HEART_BACK, HANG_UP_STREAM_DELETE, HANG_UP_AGOR_USER_OFFLINE -> {
                Toast.makeText(this, getString(R.string.voice_chat_online_no), Toast.LENGTH_SHORT).show()
            }
        }

猜你喜欢

转载自blog.csdn.net/cadi2011/article/details/85420629