我无法理解这一点。我尝试过不同的铸造变体,但似乎都无法实现。
var tArray : NSArray = tempArr2 as NSArray
memoArray = tArray.mutableCopy() as! NSMutableArray
完整的错误消息是:
无法转换'ReverseRandomAccessCollection<类型的值;[AnyObject]>'(又名"ReverseRandomAccessCollection>')在强制中键入"NSArray"
这是整个块,尽管我认为这不会有什么不同,因为错误只存在于这种铸造方法中。
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())