將數組等分成二維數組

- (NSArray *)splitArray: (NSArray *)array withSubSize : (int)subSize{
//  數組將被拆分成指定長度數組的個數
unsigned long count = array.count % subSize == 0 ? (array.count / subSize) : (array.count / subSize + 1);
//  用來保存指定長度數組的可變數組對象
NSMutableArray *arr = [[NSMutableArray alloc] init];

//利用總個數進行循環(huán),將指定長度的元素加入數組
for (int i = 0; i < count; i ++) {
    //數組下標
    int index = i * subSize;
    //保存拆分的固定長度的數組元素的可變數組
    NSMutableArray *arr1 = [[NSMutableArray alloc] init];
    //移除子數組的所有元素
    [arr1 removeAllObjects];
    
    int j = index;
    //將數組下標乘以1、2、3,得到拆分時數組的最大下標值,但最大不能超過數組的總大小
    while (j < subSize*(i + 1) && j < array.count) {
        [arr1 addObject:[array objectAtIndex:j]];
        j += 1;
    }
    //將子數組添加到保存子數組的數組中
    [arr addObject:[arr1 copy]];
}
return [arr copy];
}
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容