iOS: addObjectsFromArray 新增資料一值為空的解決辦法

zhunjiee發表於2016-03-31

前幾日在開發中需要朝一個可變陣列中新增子陣列,內心知道用addObjectsFromArray方法嘛,hahaha

[self.orderArray addObjectsFromArray:[DetailModel mj_objectArrayWithKeyValuesArray:responseObject]];

可是我了個擦,出現狀況了,怎麼orderArray陣列中一直是空的呢?苦惱啊……

冥思苦想,終於找到了原因所在,原來是這個可變陣列從資料來源中沒有讀到資料這個時候它就是nil 了,而你的nil 的陣列做任何操作都是不起作用的.

所以在使用addObjectsFromArray之前,一定要先判斷陣列是否為nil,或者說一定要建立這個陣列,而不是單單宣告這個陣列

解決辦法:

// 懶載入
- (NSMutableArray *)orderArray{
    if (!_orderArray) {
        _orderArray = [NSMutableArray array];
    }
    return _orderArray;
}





// 或者直接
if (!_orderArray) {
        _orderArray = [NSMutableArray array];
}

相關文章