2016-08-25 57 views
-4

當使用for循環遍歷數組時,我遇到了「超出範圍錯誤」,但我找不到原因。在Swift數組的索引中使用for循環超出範圍錯誤

var oddNumbers: [Int] = [1,3,5,7,9] 
for number in (0...oddNumbers.count+1) { 
    print(oddNumbers[number]) 
} 
+0

'oddNumbers'的指數需要在0〜'oddNumbers.count - 1'(含)。在(0 ... oddNumbers.count + 1)中編寫'數字'','數字'可以比這更大。 – OOPer

回答

1

有數組中的5個值,但你的循環運行從0到6,所以你最終:

指數0:1

指數1:3

指數2:5

索引3:7

索引4:9

索引5:錯誤

更好的方法是使用陣列計數和運行循環,直到比少一個數量(考慮索引編號)。使用注意事項..<代替...count,而不是count + 1

var oddNumbers: [Int] = [1,3,5,7,9] 
for number in (0 ..< oddNumbers.count) { 
    print(oddNumbers[number]) 
}