Kotlin之when(含個小竅門)
阿新 • • 發佈:2019-01-05
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() } }