数组中包含字典数据键相同整理

问题来源,有一组数组数据,类似通讯录结构,遇到一个用户有多个号码。

数组 结构

NSMutableArray * allDataArray = [NSMutableArray array];
    NSDictionary * dic1 =@{@"nameA":@"123"};
    NSDictionary * dic2 =@{@"nameA":@"124"};
    NSDictionary * dic5 =@{@"nameA":@"124"};
    NSDictionary * dic6 =@{@"nameB":@"125"};
    NSDictionary * dic3 =@{@"nameB":@"125"};
    NSDictionary * dic4 =@{@"nameC":@"126"};
    [allDataArray addObject:dic1];
    [allDataArray addObject:dic2];
    [allDataArray addObject:dic3];
    [allDataArray addObject:dic4];
    [allDataArray addObject:dic5];
    [allDataArray addObject:dic6];

整理成数据结构为
Array : [key:@[]], [key:@[]], [key:@[]]

    NSMutableArray * zlArray = [NSMutableArray array];
    for (NSInteger i = 0; i

数据结构为
Array : key:@[] ,key:@[], key:@[]

  NSMutableArray * zlArray = [NSMutableArray array];
    for (NSInteger i = 0; i

需掌握知识点

1.遍历排序的思维逻辑
2.深拷贝的使用
  对象是不可变的对象:  mutableCopy ->深拷贝 -> 可变对象
                            copy ->浅拷贝 -> 不可变对象

对象是可变对象: mutableCopy ->深拷贝 -> 可变对象
                            copy ->深拷贝 -> 不可变对象

mutableCopy 之后都是深拷贝,因为深拷贝是内容拷贝,对象可变
Copy        之后对象都不可变

你可能感兴趣的:(数组中包含字典数据键相同整理)