swift字符串转数组输出报错

swift 初学者求问,书上的例子:

let str3000 = "yaonimingsanqian"
let arr3000 = Array(str3000)
print(Array[4])

为什么会报错

error: missing argument label 'arrayLiteral:' in call

error: instance member 'subscript' cannot be used on type 'Array<_>

?

我知道在swift2.0里,字符串的原理发生了变化,但是尝试了很多变形,还是没能解决问题。

以及,未来出现这种问题,除了官方文档和这里,我应该去哪个网站搜索答案?感觉手头的书和网络文章都比较旧,学习进度很缓慢。

谢谢!


摇曳的蔷薇
浏览 912回答 2
2回答

呼如林

应该这样做:let&nbsp;str3000&nbsp;=&nbsp;"yaonimingsanqian" print(str3000[str3000.startIndex.advancedBy(4)])有问题的话,认真 Google 就可以了。

米琪卡哇伊

1.error: missing argument label 'arrayLiteral:' in call在swift2.1中,应该这样写let&nbsp;arr3000&nbsp;=&nbsp;Array(arrayLiteral:&nbsp;str3000)这个会让上面的字符串对象变成["yaonimingsanqian"]一个仅含一个元素的数组对象2.error: instance member 'subscript' cannot be used on type 'Array<_>第二个是说 下标[4] 不能直接用于 Array3.建议:看官方文档2.1英文原版,2.0以下的书不要看,语法变动太大,有问题谷歌/查官方文档
打开App,查看更多内容
随时随地看视频慕课网APP