iOS 对象数组去重排序(有序和无序)

一、无序去重

这个很简单了,如果对排序无所谓只想去重的话,这个方法很简便实用

//无序去重
    NSMutableArray *resultArray = [[NSMutableArray alloc] init];
    NSMutableDictionary *mutableDic = [NSMutableDictionary dictionary];
    for (UserInfo *info in self.dataArray) {
        [mutableDic setObject:info forKey:info.userid];
    }
    resultArray = [NSMutableArray arrayWithArray:[mutableDic allValues]];

二、有序去重

一个for循环解决这个问题,能用一个for循环搞定的坚决不用两个

//有序去重
    NSMutableArray *ids = [[NSMutableArray alloc] init];
    NSMutableArray *resultArray = [[NSMutableArray alloc] init];
    for (UserInfo *info in self.dataArray) {
        if (info.userid.length && ![ids containsObject:info.userid]) {
            [ids addObject:info.userid];
            [resultArray addObject:info];
        }
    }

让人不经意的小细节

你可能感兴趣的:(iOS 对象数组去重排序(有序和无序))