ios - 将对象数组分成 4 组 - ios

标签 ios logic

如何将对象数组拆分为对象数组的数组?

假设我想分成 4 人一组,我该怎么做?

[a,b,c,d,e,f,g,h] => [a,b] [c,d] [e,f] [g,h]

或者如果我指定要分成 3 组,那么结果应该是 [a,b,c],[d,e,f],[g,h]

如果 h 不存在,它也应该有效。

最佳答案

试试这个逻辑......

NSArray *arr = [[NSArray alloc]initWithObjects:@"One",@"Two",@"Three",@"Four",@"Five",@"Six",@"Seven",nil];
NSMutableArray *arrNew = [[NSMutableArray alloc]init];
int numberofSubArrs = 3; // change this to check the logic
for (int i=0; i<numberofSubArrs; i++) {
    NSMutableArray *arrrr = [[NSMutableArray alloc]init];
    [arrNew addObject:arrrr];
}
int m = 0;
for (int k=0; k<[arr count]; k++) {
    [[arrNew objectAtIndex:m]addObject:[arr objectAtIndex:k]];
    m++;
    if (m == numberofSubArrs) {
        m=0;
    }
}
int g=0;
int p=0;
while(p<[arr count]) {
    for (int z=0; z<[[arrNew objectAtIndex:g] count]; z++) {
        [[arrNew objectAtIndex:g] replaceObjectAtIndex:z withObject:[arr objectAtIndex:p++]];
    }
    g++;
}
NSLog(@"Required Array is:%@",[arrNew description]);

关于ios - 将对象数组分成 4 组 - ios,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13472920/

相关文章:

iphone - 如何将 3d View 旋转 360 度?

ios - ld : framework not found -framework ERROR

logic - 如何在 Coq 中编写 ∀x ( P(x) 和 Q(x) )?

ios - 对于 UIButton,我同时使用了标题和图像。我希望标题先于图像

android - 在 flutter 中显示全屏加载小部件

ios - 更新后应用程序启动弹出警报 View

c - 在 C 编程中是否可以让 for 循环遍历多个数组/变量?

java - 按层次顺序获取类

login - 社交登录背后的逻辑

c++ - 尝试从类打印私有(private)静态整数时出错。 C++