iOS数组去除重复的元素的4种方法

_sectionArray = [@"1000w",@"200w",@"500w"];

方法一、使用NSMutableDictionary的AllKeys方法

NSMutableDictionary *dic = [[NSMutableDictionary alloc]initWithCapacity:0];
    for (NSString *str in _sectionArray) {
        [dic setValue:str forKey:str];
    }
    NSLog(@"dic allKeys%@",[dic allKeys]);

结果为:

dic allKeys(

    "200W",

    "500w",

    "1000w"

)


方法二、使用NSSet的AllObjects方法

    NSSet *set = [NSSet setWithArray:_sectionArray];
    NSLog(@"set allObjects%@",[set allObjects]);

结果为:

dic allKeys(

    "500W",

    "1000w",

    "200w"

)


方法三、使用数组的containsObject方法

    NSMutableArray *listAry = [[NSMutableArray alloc]init];
    for (NSString *str in _sectionArray) {
        if (![listAry containsObject:str]) {
            [listAry addObject:str];
        }
    }
    NSLog(@"listAry containsObject%@",listAry);

结果为:

dic allKeys(

    "1000W",

    "200w",

    "500w"

)


方法四、使用keyValue方法

    NSMutableArray *listAry4 = [_sectionArray valueForKeyPath:@"@distinctUnionOfObjects.self"];
    NSLog(@"keyValue%@",listAry4);

结果为:

dic allKeys(

    "500W",

    "1000w",

    "200w"

)


为什么打印出来的顺序不一样?暂时没了解到,后面继续学习。


更多JavaUnity3D的文章,

请点击:http://blog.csdn.net/u010841622


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值