我一直在Swift 4游乐场使用Apple网站上的以下代码:
var mystring = "Hello there"
mystring.insert(contentsOf: "TEST".characters, at: 5)
这给出了错误:
无关的参数标签'contentsOf:'在通话中
在操场上有以下描述:
错误:testsubstrings.playground:1:24:错误:协议'Collection'只能用作通用约束,因为它具有自身或相关类型要求str.insert(contentsOf:Collection,at:< #T# #String.Index#&GT)
这是Apple doc网站上的相同示例。我无法弄清楚为什么它不起作用。
答案 0 :(得分:5)
假设您使用的是Swift 4,问题主要是由于您尝试使用Int
而不是String.Index
来指定索引。
您的代码可以使用以下更改:
var mystring = "Hello there"
mystring.insert(contentsOf: "TEST", at: mystring.index(mystring.startIndex, offsetBy: 5))
结果:
HelloTEST那里
使用字符串索引并不简单。
答案 1 :(得分:0)
无法与数组一起使用我遇到了相同的问题。 “调用中的外部参数标签'contentsOf:'