Перечисление Kotlin с несколькими «параметрами» - PullRequest
0 голосов
/ 05 ноября 2018

Для упражнения у меня есть перечисление (заданное учителем), которое выглядит так:

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?

Я искал в Интернете ответ, но нигде не нашел перечисления с двумя «параметрами» (не знаю, как его назвать), поэтому я начинаю задумываться, возможно ли это перечисление.

Спасибо, ребята

1 Ответ

0 голосов
/ 05 ноября 2018

Как показано в документации , вам необходимо объявить name и damage как свойства класса enum, используя ключевое слово val:

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

Тогда вы сможете просто получить доступ к player.weapon.weaponName.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...