Scala увеличить enum
Подскажите пожалуйста, как можно в Scala увеличить Enumeration на число?
object PracticalSkill extends Enumeration {
type PracticalSkill = Value;
val Novice, Advanced, Expert = Value;
}
var unitSkill = PracticalSkill.Advanced;
unitSkill += 1; // <-- Нужно что-бы получилось PracticalSkill.Expert так как он следующий
// Но чёт нечего толкового не могу загуглить...
Ответы (1 шт):
Автор решения: EnverOsmanov
→ Ссылка
У Enumeration есть номера - id.
// извлечём номер Advanced
val advancedId = PracticalSkill.Advanced.id // 2
// следующий номер
val nextId = advancedId + 1 // 3
// по номеру достанем значение
val expert = PracticalSkill(nextId)