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里,字符串的原理发生了变化,但是尝试了很多变形,还是没能解决问题。以及,未来出现这种问题,除了官方文档和这里,我应该去哪个网站搜索答案?感觉手头的书和网络文章都比较旧,学习进度很缓慢。谢谢!
2 回答
呼如林
TA贡献1798条经验 获得超3个赞
应该这样做:
let str3000 = "yaonimingsanqian" print(str3000[str3000.startIndex.advancedBy(4)])
有问题的话,认真 Google 就可以了。
米琪卡哇伊
TA贡献1998条经验 获得超6个赞
1.error: missing argument label 'arrayLiteral:' in call
在swift2.1中,应该这样写
let arr3000 = Array(arrayLiteral: str3000)
这个会让上面的字符串对象变成
["yaonimingsanqian"]
一个仅含一个元素的数组对象
2.error: instance member 'subscript' cannot be used on type 'Array<_>
第二个是说 下标[4] 不能直接用于 Array
3.建议:看官方文档2.1英文原版,2.0以下的书不要看,语法变动太大,有问题谷歌/查官方文档
- 2 回答
- 0 关注
- 977 浏览
添加回答
举报
0/150
提交
取消