我有swift數組元組[(String, String)]
,並希望將此數組轉換爲NSMutableArray。我曾嘗試這樣做,它不工作:如何將一個Swift數組轉換爲NSMutableArray?
let myNSMUtableArray = swiftArrayOfTuples as! AnyObject as! NSMutableArray
我有swift數組元組[(String, String)]
,並希望將此數組轉換爲NSMutableArray。我曾嘗試這樣做,它不工作:如何將一個Swift數組轉換爲NSMutableArray?
let myNSMUtableArray = swiftArrayOfTuples as! AnyObject as! NSMutableArray
由於迅速的類型,如Tuple
或Struct
已經在Objective-C沒有等價它們不能被轉換爲或引用爲AnyObject
其中NSArray
和NSMutableArray
將它們的元素類型約束爲。
,如果你必須從一個元組的迅速陣列返回一個NSMutableArray退而求其次可能回到2元數組的數組:
let itemsTuple = [("Pheonix Down", "Potion"), ("Elixer", "Turbo Ether")]
let itemsArray = itemsTuple.map { [$0.0, $0.1] }
let mutableItems = NSMutableArray(array: itemsArray)
有兩個問題與你正在嘗試做的:
NSArray
,但它不能被轉換爲NSMutableArray
沒有構建副本這裏是你如何從String
對象斯威夫特陣列構建NSMutableArray
:
var arr = ["a"]
arr.append("b")
let mutable = (arr as AnyObject as! NSArray).mutableCopy()
mutable.addObject("c")
print(mutable)
你不能。更改二維數組''[[String]]的元組並將其保存爲[AnyObject]' –