2016-04-22 76 views
1

我在一個數組中有多個字符串。它們每個都包含一個引號,但我想爲每個字符串的末尾添加另一個"。這就是我要做的事:陣列中的引號丟失

for var str in coordinates { 
    str += "\"" 
    print(str) 
} 
print(coordinates[0]) 

print(str)打印My"String"這是應該的。
但是print(coordinates[0]打印My"String

怎麼回事?這是如何顯示字符串,但實際字符串包含"
在此先感謝。

回答

4

for varvar僅適用於循環內的當前作用域。

它不是數組中字符串的引用,它是一個副本(值)。

可以變異的數組,但這樣做是爲了創建一個新的SWIFTY方式在現有的字符串,map例如:

let result = coordinates.map { str in return str + "\"" } 

短版:

let result = coordinates.map { $0 + "\"" } 
+1

謝謝,正是我在找的:) – LinusGeffarth