对于练习,我有一个枚举(由老师设置),看起来像这样:
enum class Weapon(name: String, damage: Int) {
SWORD("Sword", 12),
AXE("Axe", 13),
BOW("Bow", 14)
}
该武器将是
data class Player
的属性但是一旦我设置了
player.weapon = Weapon.SWORD
如何访问name
的damage
或weapon
?我已经在Internet上寻找答案,但是在任何地方都找不到带有两个“参数”的枚举(不知道如何称呼它),所以我开始怀疑这个枚举是否可能。
谢谢你们
最佳答案
如the documentation所示,您需要使用name
关键字将damage
和val
声明为枚举类的属性:
enum class Weapon(val weaponName: String, val damage: Int)
然后,您将可以简单地访问
player.weapon.weaponName
。关于Kotlin枚举,带有多个 "parameter",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53160024/