Swift 对于从阵列/游乐场多次传递相同条目的循环,不,为什么?

Swift 对于从阵列/游乐场多次传递相同条目的循环,不,为什么?,swift,for-loop,Swift,For Loop,我想问,我是错了还是这是“正常”的行为。 当将以下代码放入一个类并通过单击按钮调用它时,它会多次向我提供相同的输出。但把它放到操场上,它只会给我一次输出 它属于以下代码: class fruits { var fruitID: String! var fruitName: [String]! var fruitColor: [String]! init(fruitID: String, fruitName: [String], fruitColor: [Str

我想问,我是错了还是这是“正常”的行为。 当将以下代码放入一个类并通过单击按钮调用它时,它会多次向我提供相同的输出。但把它放到操场上,它只会给我一次输出

它属于以下代码:

class fruits {

    var fruitID: String!
    var fruitName: [String]!
    var fruitColor: [String]!

    init(fruitID: String, fruitName: [String], fruitColor: [String]) {
        self.fruitID = fruitID
        self.fruitName = fruitName
        self.fruitColor = fruitColor
    }

}
-->代码


多亏了@Kametrixom,解决方案看起来像:

for fruit in myFruits {

    println("++ FRUITID ++ : \(fruit.fruitID)")

    for fruitName in fruit.fruitName {
        println("++ FRUITNAME ++ : \(fruitName)")
        //break
    }

    for fruitColor in fruit.fruitColor {
        println("++ FRUITCOLOR ++ : \(fruitColor)")
        //break
    }   
}

在第二个for循环中,您正在打印
fruit.fruitName
,但是
fruit
在内部for循环中不会更改。将其重写为
fruitName
**in CODE:**

++ FRUITID ++  : AAA
++ FRUITNAME ++ : [Apple, Banana]
++ FRUITNAME ++ : [Apple, Banana]
++ FRUITCOLOR ++  : [red, yellow]
++ FRUITCOLOR ++  : [red, yellow]


**in PLAYGROUND:**

++ FRUITID ++  : AAA
++ FRUITNAME ++ : [Apple, Banana]
++ FRUITCOLOR ++  : [red, yellow]
for fruit in myFruits {

    println("++ FRUITID ++ : \(fruit.fruitID)")

    for fruitName in fruit.fruitName {
        println("++ FRUITNAME ++ : \(fruitName)")
        //break
    }

    for fruitColor in fruit.fruitColor {
        println("++ FRUITCOLOR ++ : \(fruitColor)")
        //break
    }   
}