“x”隐藏超类型“Enum”的成员,需要“覆盖”修饰符 - Kotlin

Ahm*_*hat 2 enums android kotlin

我正在尝试在我的一个项目中使用 Kotlin 中的枚举类。问题是我无法为枚举类赋值。它说

“name”隐藏超类型“Enum”的成员,需要“覆盖”修饰符。

我没有解决方案了。我该怎么办 ?

这是我的枚举类:

enum class Sigorta (val name: String) {
    TRAFIK("Trafik Sigortas?"),
    KASKO("Kasko Sigortas?"),
    FERDI("Ferdi Kaza Sigortas?"),
    SEYAHAT("Seyahat Sigortas?"),
    SAGLIK("Sa?l?k Sigortas?"),
    KONUT("Konut Sigortas?"),
    DASK("Dask Sigortas?");
}
Run Code Online (Sandbox Code Playgroud)

这是我想要实现的目标:

Sigorta.TRAFIK.name // "Trafik Sigortas?"
Run Code Online (Sandbox Code Playgroud)

Fra*_*esc 6

您不能使用name,它已在 Enum 类中定义。像这样重命名您的财产

enum class Sigorta (val value: String) {
    TRAFIK("Trafik Sigortas?"),
    KASKO("Kasko Sigortas?"),
    FERDI("Ferdi Kaza Sigortas?"),
    SEYAHAT("Seyahat Sigortas?"),
    SAGLIK("Sa?l?k Sigortas?"),
    KONUT("Konut Sigortas?"),
    DASK("Dask Sigortas?");
}
Run Code Online (Sandbox Code Playgroud)

然后使用

Sigorta.TRAFIK.value
Run Code Online (Sandbox Code Playgroud)