OC-遍历和排序

来源:互联网 发布:用c语言求最大公约数 编辑:程序博客网 时间:2024/06/07 23:27
//集合的遍历 NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"11", @"a", @"22", @"b", @"33", @"c", nil];//for循环    for(int i = 0; i < dic.count; i++) {//        先根据allkey以及下标i取出key值        NSString *key = [dic.allKeys objectAtIndex:i];//        根据key值取出对应的value        NSLog(@"%@", [dic objectForKey:key]);    }  //    for  in遍历    //    数组    NSMutableArray *arr = [NSMutableArray arrayWithObjects:@"q", @"w", @"e", @"r", @"d", @"f", nil];    for (NSString *str in array) {if ([str isEqualToString:@"w"]) {[arr replaceObjectAtIndex:[arr indexOfObject:str] withObject:@"wxw"];                        NSLog(@"%@", str);        }    }//如果遇到W替换成wxw
    //    枚举遍历NSEnumerator    //    正序遍历 和 倒序遍历    NSEnumerator *enume = [arr objectEnumerator];    //    取对象    NSString *str = nil;    while (str = [enume nextObject]) {        NSLog(@"��%@", str);    }//    NSEnumerator *enumer = [arr reverseObjectEnumerator];//倒序//    排序    NSArray *arr2 = @[@"1", @"8", @"7", @"4", @"6", @"5"];//    NSSortDescriptor -- 排序描述符//    定义排序描述符    NSSortDescriptor *des = [[NSSortDescriptor alloc] initWithKey:nil ascending:NO];//    ascending --YES 升序   NO  降序//    key -- 对象内属性对应的键值,字符串这样的对象使用nil//    常见存储描述符数组(可以添加多个限定条件), 比如按姓名排序,按年龄排序    NSArray *des2 = [NSArray arrayWithObject:des];//    排序并承接完成排序的数组//    不可变数组的方法    NSArray *over = [arr2 sortedArrayUsingDescriptors:des2];//    可变数组    NSMutableArray *marr = [NSMutableArray arrayWithArray:arr2];//    可变数组可直接改变自身    [marr sortUsingDescriptors:des2];
原创粉丝点击