У меня есть enum
:
public enum PersonType:String {
case Cool = "cool"
case Nice = "rude"
case SoLazy = "so-lazy"
public var description: String {
switch self {
case .Cool:
return "Cool person"
case .Nice:
return "Nice person"
case .SoLazy:
return "its so lazy person"
}
}
public var typeImage: String {
switch self {
case .Cool:
return "cool.png"
case .Nice:
return "img_nice.png"
case .Solazy:
return "lazy.png"
}
}
}
Проблема: я не знаю всех ключей типа человека, поэтому мне нужно обработать случай с типом персонализации по умолчанию и дать ему описание, будет ли он ключевым, как "ленивый" и образ по умолчанию.
скажем, я получаю этот результат от веб-службы:
[
{
name: "john",
key: "cool"
},
{
name: "paul",
key: "funny"
}
]
Мне нужно иметь случай по умолчанию для обработки ключа "смешно"
вот как я инициализирую свое перечисление при разборе и создании объекта person:
if let personType = PersonType(rawValue:personTypeKey ?? "") {
self.personType = personType
}
Я хочу else
или лучший подход для обработки случайных ключей в моем перечислении и дать им ключ как описание и образ по умолчанию.