什么是Kotlin中的"重复时间"?

mdu*_*ucc 6 kotlin

我写的代码如下:

when(month){
        1 or 7 -> arrHoangDao = arrayListOf("Tý", "S?u", "T?", "Mùi")
        2 or 8 -> arrHoangDao = arrayListOf("D?n", "Mão", "Mùi", "D?u")
        3 or 9 -> arrHoangDao = arrayListOf("Thìn", "T?", "D?u", "H?i")
        4 or 10 -> arrHoangDao = arrayListOf("Ng?", "Mùi", "S?u", "D?u")
        5 or 11 -> arrHoangDao = arrayListOf("Thân", "D?u", "S?u", "Mão")
        /* 6 or 12 is duplicate */
        6 or 12 -> arrHoangDao = arrayListOf("Tu?t", "H?i", "Mão", "T?")
    }
Run Code Online (Sandbox Code Playgroud)

我得到的消息是"重复时".这是什么意思?

Tim*_*Tim 20

您使用的位或用or.这意味着1 or 7计算结果为7并且4 or 10计算结果为14. 6 or 12也恰好评估为14,因此编译器会告诉您它是重复的.

解决方案:使用,而不是or.在此处查看有关如何使用when语句的更多信息.