我在想,如果有人能告訴我如何將其轉換爲SWIFT 3:轉換爲斯威夫特2〜3
for index = 0; index < jsonObjects.count; index += 1 {
...
}
我是菜鳥/砍了那麼一點點的解釋將是很好。試圖學習。謝謝。
我在想,如果有人能告訴我如何將其轉換爲SWIFT 3:轉換爲斯威夫特2〜3
for index = 0; index < jsonObjects.count; index += 1 {
...
}
我是菜鳥/砍了那麼一點點的解釋將是很好。試圖學習。謝謝。
你可以做最簡單的方式(因爲你jsonObject
是一個集合):
for obj in jsonObjects {
print(obj)
}
或者你可以做的功能方式:
stride(from: 0, to: jsonObjects, by: 1).forEach({ obj in
print(jsonObjects[obj])
})
c樣式for循環已從swift中刪除,因爲有更優雅的解決方案。
,你可以遍歷一個範圍:
for index in 0 ..< jsonObjects.count {
...
}
0 ..< jsonObjects.count
創建範圍從0到jsonObjects.count-1
。如果應包含最後一個索引,請使用...
。
此外,它看起來像jsonObjects
是一個集合,所以你可以只使用
for object in jsonObjects {
...
}
如果需要的索引,使用
for (index, object) in jsonObjects.enumerated() {
...
}
嘗試使用地圖,或flatmap爲自選
_= jsonObjects.map { object in
//manipulate your object
print(object)
}
還有如何使用它們以及許多在線指南等,這裏是一個很好的一個:link
不是,但我一直認爲迅捷推動更多的地圖和功能編程,而不是定期循環 – Abdoelrhman
哦,哎呀,對不起 - 我的壞。我以爲你在說'可選'的'map(_ :)'。但是使用'map(_ :)'來循環數組是沒有意義的,因爲你沒有使用結果數組。相反,使用'forEach(_ :)'或一個常規的'for in'循環。 – Hamish
搜索'[迅速]Ç風格爲循環',你會發現*許多*答案... –
學習是_you_做的事情。 – matt
我可以想出至少3種同樣好的方法來做到這一點,你試過了嗎? –