从数组中检索每个值并将它们一起添加,代码不能遍历整个数组?

时间:2016-05-06 14:57:58

标签: arrays swift

对于代码问题: 它想要的是你创建一个for循环,它将在它提供的数组长度上运行。我们将使用我们的计数器变量跟踪数组中的位置。最后,我们应该得到该数组中所有数字的总和。

我不明白为什么我的第二个循环不能遍历整个数组,我如何检查总和,那只是打印总和?

let numbers = [2,8,1,16,4,3,9]
var sum = 0
var counter = 0

while sum < numbers.count {
    print(numbers[sum])
    sum += 1
}

while counter < numbers.count {
  sum = sum + numbers[counter] 
  print(numbers[counter])
  counter += 1              
}

2 个答案:

答案 0 :(得分:3)

如果您想要的只是数组中所有数字的总和,那么您可以这样做......

let numbers = [2,8,1,16,4,3,9]
var sum = 0

for number in numbers {
    sum += number
}

print (sum)

甚至更容易......

sum = numbers.reduce(0, combine: +)

答案 1 :(得分:0)

严格遵循问题陈述,我会说以下代码将是更好的选择

let numbers = [2, 8, 1, 16, 4, 3, 9]
var sum = 0

for counter in 0 ..< numbers.count {
    sum += numbers[counter]
    print("Counter: \(counter) Sum: \(sum)")
}