2

我有一个这样定义的 Kotlin枚举类

enum class EnumClass(val string: String) {

    VALUE_A(A), // [1]

    VALUE_B(B); // [2]

    companion object {

        const val A = "A"

        const val B = "B"
    }
}

并且编译器在[1][2]行中给了我以下错误:

Variable 'A' must be initialized
Variable 'B' must be initialized

我可以通过将 const 提取到源文件的顶层来解决这个错误,但我不喜欢这个解决方案。有没有其他方法可以解决这个问题?

4

1 回答 1

4

我能够通过完全排位赛来完成这项工作,A并且B

enum class EnumClass(val string: String) {
    VALUE_A(EnumClass.A), 
    VALUE_B(EnumClass.B); 

    companion object {
        const val A = "A"
        const val B = "B"
    }
}
于 2019-10-21T12:27:30.657 回答