这是我的代码:
var myString:String = "abc"
var myStringArray = Array(myString)
myStringArray[0] = String("cow")
我将字符串“abc”转换为数组[“a”,“b”,“c”]。然后我尝试将第一个元素变成“牛”,这样我就有了数组[“cow”,“b”,“c”]。但它不允许我做最后一部分(即第三行),因为数组中的元素是CHARACTERS而不是STRINGS(所以我不能用字符串“cow”替换字符“a”)。
那我该怎么做呢?我假设我想这样做,所以[“a”,“b”,“c”]中的元素在程序中被解释为字符串(每个字母长一个),这样我就可以进行所需的替换。但是怎么做呢?
答案 0 :(得分:3)
您可以使用新阵列的map
方法将Character
个实例转换为String
:
var myString:String = "abc"
var myStringArray = Array(myString).map { String($0) }
myStringArray[0] = String("cow")
答案 1 :(得分:2)
var myString:String = "abc"
var myStringArray = myString.characters.map{String($0)}
myStringArray[0] = String("cow")