我创建了一个返回多个值的函数。
然而,在我的代码中,我希望在var
中捕获这些值。
我如何在班上宣布这个var
?我需要知道究竟返回了什么以及它的类型。
如果你能解释原因,以及如何自己解决这个问题,我将非常感激。
这是我的代码的一部分:
func returnTypes(value: Int) -> (international:String, europe: Int, us: Int, ru: Int){
if value >= 86 && value <= 118{
switch value{
case 88:
return ("XXS",28, 28, 42)
case 90:
return ("XS",29, 29, 44)
case 92:
return ("S",30, 30 ,46)
default:
return ("XXS", 28,28,42)
}
}
}
这是我想要获取结果的地方:
if gender == NSLocalizedString("GENDER_MALE",comment: "COMMENT"){
returned = converter.returnTypes(NSDEFAULTMETHOD.toInt()!)
答案 0 :(得分:1)
首先,注意这不是多个返回值,而是返回包含多个值的一个对象的元组。要在变量中访问它们,变量需要是相同类型的元组(这是函数的返回类型)。此外,您需要在if语句之外返回函数中的某些内容。
func returnTypes(value: Int) -> (international:String, europe: Int, us: Int, ru: Int) {
if value >= 86 && value <= 118{
switch value{
case 88:
return ("XXS",28, 28, 42)
case 90:
return ("XS",29, 29, 44)
case 92:
return ("S",30, 30 ,46)
default:
return ("XXS", 28,28,42)
}
}
return ("",0,0,0)
}
var tuple: (international:String, europe: Int, us: Int, ru: Int) = returnTypes(5)
并访问值:
tuple.europe
tuple.international
tuple.ru
tuple.us