首页 > swift字符串转数组输出报错

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里,字符串的原理发生了变化,但是尝试了很多变形,还是没能解决问题。

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

谢谢!


应该这样做:

let str3000 = "yaonimingsanqian"
print(str3000[str3000.startIndex.advancedBy(4)])

有问题的话,认真 Google 就可以了。


不明白你希望用这个代码做什么

Array[4]是什么东西

为什么要"除了"官方文档


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

【热门文章】
【热门文章】