访问Swift中结构数组的索引#

时间:2015-03-16 16:14:40

标签: swift for-loop struct

我无法弄清楚这是否在Swift中是可能的,但是使用for索引循环我试图将我的数组的索引与位于myarray内的结构中的属性匹配

数据:

class MyClass {

struct myStruct {
    var name: String? = ""
    var age: Double = 0
}

let myArray: [myStruct] = [
    myStruct(name: "Gary", age: 35),
    myStruct(name: "Carol", age: 60),
    myStruct(name: "Lou", age: 55)
    ]
}

控制器:

var instanceofMyClass = MyClass()

for (index, age) in enumerate(instanceofMyClass.myArray) {
    println("my index is \(index) and age is \(age)")

当我用一个简单的字符串数组替换我的结构数组时,我返回一个值,但是当它是一个结构数组时不能返回一个值

1 个答案:

答案 0 :(得分:3)

即使您的循环变量名为(index, age),您仍然在迭代myArray,并且包含您已定义的结构的实例。因此age实际上包含该结构的实例而不是双精度。

你需要这样的东西来获取循环中的age值:

for (index, myStruct) in enumerate(instanceofMyClass.myArray) {
    println("my index is \(index) and age is \(myStruct.age)")
}