arrays - 如何在快速 for-in 循环中使用 array.count
问题描述
我是 swift 的初学者(可能),我正在学习如何使用数组我试图创建一个循环量为 1...array.count 的 for-in 循环,但我得到了一个错误:
Fatal error: Index out of range Current stack trace: 0
libswiftCore.so 0x00007f0f71f0aea0 swift_reportError + 50 1 libswiftCore.so
0x00007f0f71f7c0c0 swift_stdlib_reportFatalError + 69 2
libswiftCore.so 0x00007f0f71e775d7 + 3347927 3 libswiftCore.so 0x00007f0f71c94d80 fatalErrorMessage( : :file:line:flags:) + 19 4 libswiftSwiftOnoneSupport.so 0x00007f0f755c7ad0 specialized Array.subscript.getter + 85 6 swift
0x00000000004f23c9 + 992201 7 swift
0x00000000004f6a40 + 1010240 8 swift
0x00000000004e62ef + 942831 9 swift
0x00000000004d5093 + 872595 10 swift
0x00000000004d0e4e + 855630 11 swift
0x0000000000473c16 + 474134 12 libc.so.6
0x00007f0f73771ab0 __libc_start_main + 231 13 迅速
0x000000000047387a + 473210 堆栈转储:0。程序参数:/usr/bin/swift -frontend -interpret Forecast.swift -disable-objc-interop -module-name Forecast /usr/bin/swift[0x4521834] /usr/bin/swift [0x451f48e] /usr/bin/swift[0x4521c48] /lib/x86_64-linux-gnu/libpthread.so.0(+0x128a0)[0x7f0f7532b8a0] /usr/lib/swift/linux/libswiftCore.so(+0x3315d7)[ 0x7f0f71e775d7] /usr/lib/swift/linux/libswiftCore.so($ss18_fatalErrorMessage__4file4line5flagss5NeverOs12StaticStringV_A2HSus6UInt32VtF+0x13)[0x7f0f71c94d93] /usr/lib/swift/linux/libswiftSwiftOnoneSupport.so($sSayxSicigSi_Tg5+0x55)[0x7f0f755c7b25] [0x7f0f7575d315] /usr/ bin/swift[0x4f23c9] /usr/bin/swift[0x4f6a40] /usr/bin/swift[0x4e62ef] /usr/bin/swift[0x4d5093] /usr/bin/swift[0x4d0e4e] /usr/bin/swift[0x473c16 ] /lib/x86_64-linux-gnu/libc.so。6(__libc_start_main+0xe7)[0x7f0f73771b97] /usr/bin/swift[0x47387a]
我该怎么办?这是我的代码,适用于 CodeAcademy:
var temperature: [Int] = [66, 68, 72, 76, 80, 82, 85, 85, 84, 82, 81, 78, 74, 73, 72, 71, 70, 69, 68, 65, 63, 62, 61, 63]
// Write your code below
for i in 1...temperature.count{
print(temperature[i])
}
解决方案
我认为您的目标是打印所有temperature
元素。改变
for i in 1...temperature.count {
至
for i in 0..<temperature.count {
数组索引从零开始,以比计数小一结束。..<
操作员很好地处理了这个问题。或者,更好的是,说
for i in temperature.indices {
推荐阅读
- c++ - 使用指南的函数签名中的模板参数推导
- nuget - 执行 nuget 包时出现错误“路径不是合法形式”
- c++ - 用于 MPU6050 的 TM4C123 I2C 库到 Arduino 线库
- python - 使用 Chrome 中的脚本下载 HAR 文件
- powershell - 如何更改启动类型和任务以从 csv 文件启动/停止服务?
- ubuntu-16.04 - 在 Ubuntu for Odoo 8 上安装 Gdata 时出错(未找到 404)
- testng - 如何让我的“config()”在每个 testng 会话中只运行一次?
- angularjs - 动态复选框过滤器角度js操作过滤后的项目
- rust - 我可以转换 [&'static str; 中的字符串吗?N] 变成 &[&str] 而不创建多个临时值?
- c++ - rcpp 函数中的清理时间长