Ответ 1
Вы можете поместить свой блок switch
в функцию, которая возвращает объект String
, и назначить возврат этой функции вашей переменной string1
:
func foo(var1: Int) -> String {
switch var1 {
case 1:
return "hello"
case 2:
return "there"
default:
return "world"
}
}
/* Example */
var var1 : Int = 1
var string1 : String = foo(var1) // "hello"
var1 = 2
string1 = foo(var1) // "there"
var1 = 5000
string1 = foo(var1) // "world"
В качестве альтернативы пусть string1
будет вычисленным свойством (например, в некотором классе), в зависимости от значения say var1
, и поместите блок switch
в getter этого свойства. На игровой площадке:
var var1 : Int
var string1 : String {
switch var1 {
case 1:
return "hello"
case 2:
return "there"
default:
return "world"
}
}
/* Example */
var1 = 1
print(string1) // hello
var1 = 2
print(string1) // there
var1 = 100
print(string1) // world
Если используется в классе, просто пропустите блок примера выше.