数组遍历排序

//   集合的遍历             NSSet(集合)

    NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"11", @"a", @"22", @"b", @"33", @"c", nil];

    NSLog(@"%@", dictionary);

    

    for (int i = 0; i < dictionary.count; i++) {

//        先根据allKeys以及下标i取出key

        NSString *key = [dictionary.allKeys objectAtIndex:i];

        NSLog(@"%@", [dictionary objectForKey:key]);

//        NSLog(@"%@", key);

        

//        NSString *value = [dictionary.allValues objectAtIndex:i];

//        NSLog(@"%@", value);

    }

    

    

//    for in  遍历   (OC一般用它就够了)

    NSArray *array = @[@"q", @"w", @"e", @"r", @"d", @"f"];

    

    for (NSString *str in array) {

        NSLog(@"%@", str);

    }

    

    NSMutableArray *array1 = [NSMutableArray arrayWithArray:array];

    

    for (NSString *str1 in array) {

        NSLog(@"%@", str1);

        if ([str1 isEqualToString:@"w"]) {

            [array1 replaceObjectAtIndex:[array1 indexOfObject:str1 ] withObject:@"ww"];

        

        }

//        男神小贴士: 使用for in 循环遍历集合的时候,不能修改正在遍历的集合

//        当涉及到需要修改正在循环的集合可以复制一份,循环复制出的一份,而修改自己本身

    }

    

    for (NSString *str in array1) {

        NSLog(@"%@", str);

    }

    

    

//    NSEnumerator  --  枚举遍历

//正序遍历 倒序遍历

    

//    NSEnumerator *arrayEnume = [array1 objectEnumerator];  // 正序

    NSEnumerator *arrayEnume = [array1 reverseObjectEnumerator];  // 倒序

//    取对象

    NSString *str = nil;

    

    while (str = [arrayEnume nextObject]) {

        NSLog(@"��%@", str);

    }

    

    

//   排序

    NSArray *sortArray = @[@"1", @"2", @"3", @"4", @"7"];

    

//    NSSortDescriptor   --   排序描述符 (老三步)

    

    NSSortDescriptor *des = [[NSSortDescriptor alloc] initWithKey:nil ascending:YES];   // YES-升序  NO-降序

    

//    Key -- 对象内属性对应的键值,字符串这样的对象使用nil

    

//    常见存储描述的数组 (可以添加多个限定条件,比如按姓名排序,然后按年龄)

//    排序并承接完成排序的数组

//    不可变数组的方法

//    NSArray *descriptors = [NSArray arrayWithObject:des];

    NSArray *over = [sortArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:des]];

    NSLog(@"%@", over);

    

//    可变数组

    NSMutableArray *mutableArray = [NSMutableArray arrayWithArray:sortArray];

//    可变数组可以改变自身

    [mutableArray sortUsingDescriptors:[NSArray arrayWithObject:des]];

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值