我无法理解这个问题。我尝试了不同的类型转换变体,但似乎无法理解。
var tArray : NSArray = tempArr2 as NSArray
memoArray = tArray.mutableCopy() as! NSMutableArray
完整的错误信息是:
无法将类型“ReverseRandomAccessCollection<[AnyObject]>”(又名“ReverseRandomAccessCollection>”)的值转换为强制类型“NSArray”
这是整个 block ,但我认为它不会有什么不同,因为错误仅出现在这种转换方法中。
var tempArr : Array = memoArray as Array
print("beforeReverse=\(tempArr)")
var tempArr2 = tempArr.reverse()
print("afterReverse=\(tempArr2)")
var tArray : NSArray = tempArr2 as NSArray // <----- error
memoArray = tArray.mutableCopy() as! NSMutableArray
memoArray.addObject(memoDictionary)
tempArr = memoArray as Array
print("beforeReverse=\(tempArr)")
tempArr2 = tempArr.reverse()
print("afterReverse=\(tempArr2)")
tArray = tempArr2 as NSArray // <----- error
memoArray = tArray.mutableCopy() as! NSMutableArray
最佳答案
查看 reverse()
返回类型。您应该将其转换为 Array
:
var tempArr2 = Array(tempArr.reverse())
关于swift - 无法在强制转换中将类型 '<[AnyObject]>' 的值转换为类型 'NSArray',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33604823/