美文网首页
Kotlin基础---枚举类

Kotlin基础---枚举类

作者: 积木Blocks | 来源:发表于2018-09-20 01:30 被阅读12次

    Java的枚举


    enum Color {
        RED, YELLOW, BLUE
    }
    

    Kotlin的枚举


    enum class Color {
        RED, YELLOW, BLUE
    }
    
    • 枚举是极少数Kotlin声明比Java使用了更多的关键字的例子
      • Kotlin用了enum和class两个关键字
      • Java只用了enum一个关键字
    • Kotlin中,enum是一个所谓的软关键字
      • enum只在class关键字前面才有特殊意义
      • 其他情况下,enum等同于普通名词

    声明一个带属性的枚举类


    enum class Color(val r: Int, val g: Int, val b: Int) {
        RED(255, 0, 0),//每个常量创建的时候指定属性值
        BLUE(0, 0, 255),
        YELLOW(255, 255, 0); //必须有分号
        
        fun rgb() = (r * 255 + g) * 256 + b //定义一个方法
    
    }
    
    • Kotlin语法中唯一必须使用分号的地方
      • 在枚举中,定义任何方法,就要使用分号把枚举常量列表和方法定义分开

    相关文章

      网友评论

          本文标题:Kotlin基础---枚举类

          本文链接:https://www.haomeiwen.com/subject/pctgnftx.html