为了账号安全,请及时绑定邮箱和手机立即绑定

swift字符串转数组输出报错

swift字符串转数组输出报错

摇曳的蔷薇 2018-08-15 17:02:59
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 就可以了。


查看完整回答
反对 回复 2018-08-19
?
米琪卡哇伊

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以下的书不要看,语法变动太大,有问题谷歌/查官方文档


查看完整回答
反对 回复 2018-08-19
  • 2 回答
  • 0 关注
  • 907 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信