【发布时间】:2016-10-08 02:01:01
【问题描述】:
斯威夫特 3.0
收到此错误:“无法使用 'String' 类型的索引为 '[String]' 类型的值下标”
当我尝试遍历字符串数组“口袋妖怪”时:
for x in pokemon {
var name: String!
name = pokemon[x]
poke = Pokemon(name: name, pokemonId: x)
pokemons.append(poke)
}
但是,当我写的时候它起作用了:
for x in 1..<pokemon.count {
var name: String!
name = pokemon[x]
poke = Pokemon(name: name, pokemonId: x)
pokemons.append(poke)
}
经过研究,似乎“for x in pokemon”使得“x”不是一个Int,而是一个String(实际的数组元素)。 为什么会发生这种情况?
【问题讨论】: