对于练习,我有一个枚举(由老师设置),看起来像这样:

enum class Weapon(name: String, damage: Int) {
    SWORD("Sword", 12),
    AXE("Axe", 13),
    BOW("Bow", 14)
}

该武器将是data class Player的属性
但是一旦我设置了player.weapon = Weapon.SWORD如何访问namedamageweapon

我已经在Internet上寻找答案,但是在任何地方都找不到带有两个“参数”的枚举(不知道如何称呼它),所以我开始怀疑这个枚举是否可能。

谢谢你们

最佳答案

the documentation所示,您需要使用name关键字将damageval声明为枚举类的属性:

enum class Weapon(val weaponName: String, val damage: Int)

然后,您将可以简单地访问player.weapon.weaponName

关于Kotlin枚举,带有多个 "parameter",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53160024/

10-10 07:52