Swift NSMutableArray再添加一个数组

Nis*_*ani 2 add nsmutablearray ios swift

问题是我第一次从中获取数据WebServices所以我已经显示了这些数据TableView然后用户滚动下来tableview然后再次调用WebSevices并在数组中再次添加此数据但是当我尝试在nsmutable类型数组中再次添加数据应用程序崩溃

这是我的代码.有解决方案吗

第一次数据加载正在工作

 var ary_mutable: NSMutableArray! 
 ary_mutable = NSMutableArray()
        ary_mutable=jsonResult as AnyObject as! NSMutableArray
                        self.tbl_T.reloadData();
                        self.tbl_T.delegate=self;
                        self.tbl_T.dataSource=self;
Run Code Online (Sandbox Code Playgroud)

第二次数据加载并添加旧数组不工作

var myArray :NSArray!
                myArray = jsonResult as AnyObject as! NSArray
 ary_mutable.addObject(myArray.objectAtIndex(0))
Run Code Online (Sandbox Code Playgroud)

得到此错误

[__NSCFArray insertObject:atIndex:]: mutating method sent to immutable object'
Run Code Online (Sandbox Code Playgroud)

我也试过这段代码但不行

ary_mutable.addObject(myArray)
Run Code Online (Sandbox Code Playgroud)

Avt*_*Avt 6

您应该从immutable创建一个可变数组.这个:

ary_mutable=jsonResult as AnyObject as! NSMutableArray
Run Code Online (Sandbox Code Playgroud)

不这样做,它只是从一种类型到另一种类型的静态转换.您必须构造一个新的NSMutableArray,然后用必需的值填充它.

将您的代码更改为

var ary_mutable = NSMutableArray()

// everytime you receive a new data
ary_mutable.addObjectsFromArray(jsonResult as! [AnyObject])
Run Code Online (Sandbox Code Playgroud)