美文网首页
iOS 处理数组中相同元素

iOS 处理数组中相同元素

作者: 邓布利多教授 | 来源:发表于2019-11-01 14:12 被阅读0次

如题:从数组中把相同元素放到一个数组中,返回一个二维数组

                NSDictionary *data = (NSDictionary *)response[@"data"];
                NSMutableArray *mutArray = [NSMutableArray new];
                for (NSDictionary *dict in data[@"products"]) {
                    BulkCarModel *model = [[BulkCarModel alloc]initWithDictionary:dict];
                    [mutArray addObject:model];
                }

                //创建一个存储处理结果的可变数组
                NSMutableArray *copyArr = [NSMutableArray new];
                //遍历源数组
                for (int i = 0; i < mutArray.count; i ++) {
                    
                    //创建一个存储相同元素的可变数组
                    NSMutableArray *tempArray = [NSMutableArray new];
                    //把数组中元素取出
                    BulkCarModel *iModel = mutArray[i];
                    //把第一个取出来的元素存储数组
                    [tempArray addObject:iModel];
                    
                    //从第一个取出来的元素的i值的下一个元素开始查找,查找和第一个元素相同的元素
                    for (int j = i + 1; j < mutArray.count; j ++) {
                        
                        //取出i值加1的元素
                        BulkCarModel *jModel = mutArray[j];
                        //比较i值和i值加1的两个元素是否相同
                        if ([iModel.shopName isEqualToString:jModel.shopName]) {
                            //如果两个元素相同,则把后一个元素添加到存储第一个元素的数组中
                            [tempArray addObject:jModel];
                            //把源数组中出现重复元素位置的元素移除
                            [mutArray removeObjectAtIndex:j];
                            //出现重复元素的时候,添加完成j值减1,继续查找
                            j -= 1;
                        }
                        
                    }
                    //查找完成一个元素后,把数组添加到处理结果数组,继续查找
                    [copyArr addObject:tempArray];
                    
                }
                NSLog(@"copyArr = %@",copyArr);

相关文章

  • iOS 处理数组中相同元素

    如题:从数组中把相同元素放到一个数组中,返回一个二维数组

  • 数组中相同元素的合并

    数组中相同元素的合并

  • java 数组

    java数组:相同类型数据的有序集合 (数组元素的数据类型必须相同) 1. java 创建数组变量 数组中已有元素...

  • 解决打印数组、字典时中文乱码

    数组 在iOS开发中,经常需要查看数组中得元素是否是自己想要的,但是苹果并没有对直接打印数组中得中文作处理,直接打...

  • 解决打印数组、字典时中文乱码

    数组 在iOS开发中,经常需要查看数组中得元素是否是自己想要的,但是苹果并没有对直接打印数组中得中文作处理,直接打...

  • 2018-01-18

    数组中每个元素出现的次数 返回的obj中的属性名是数组中的每个元素值,属性值是数组中相同的元素的个数。

  • 数组

    数组 由一组相同数据类型变量组成的有序集合,数组中的变量称为数组元素,元素在数组中位置称为下标,数组中元素个数称为...

  • Swift 3.0 变化汇总系列总结-Array

    创建大批量相同元素的数组创建10个string类型元素数组, 创建10个Int类型元素的数组 想数组中添加元素, ...

  • 数组,链表,堆,栈

    数组是将元素在内存中连续存放,由于每个元素占用内存相同,可以通过下标迅速访问数组中任何元素。但是如果要在数组中增加...

  • 链表的最初作用(js语言其实并不太需要链表)

    数组是将元素在内存中连续存放,由于每个元素占用内存相同,可以通过下标迅速访问数组中任何元素。但是如果要在数组中增加...

网友评论

      本文标题:iOS 处理数组中相同元素

      本文链接:https://www.haomeiwen.com/subject/fzmfbctx.html