sortedArrayUsingSelector:@selector

来源:互联网 发布:联通大数据有限公司 编辑:程序博客网 时间:2024/06/10 10:30

经常搞混的知识点总结一

NSArray *keys1 = [keys sortedArrayUsingSelector:@selector(compare:)];

NSArray *value1 = [values sortedArrayUsingSelector:@selector(sortName:)];

 sortedArrayUsingSelector:比较函数

1,若使用默认的系统Comparator:是按照递增的顺序进行排序的,若使用自定义规则如下

if (obj1 > obj2) {
      
        return NSOrderedDescending; // 降序
        
    }else if (obj1 < obj2)
    {
        return NSOrderedAscending ; //  升序
        
    }else
        return NSOrderedSame;

// 这样返回的是升序序列

f (obj1 <  obj2) {
      
        return NSOrderedDescending; // 降序
        
    }else if (obj1 > obj2)
    {
        return NSOrderedAscending ; //  升序
        
    }else
        return NSOrderedSame;

// 这样返回的是降序序列

2,字符串进行比较

if (obj1 compare:obj2 == -1) {    // 当前值小于参数值,升序

      return  NSOrderedAscending;

 } else if (obj1 compare:obj2 == 1) { // 当前值大于参数值,降序

      return NSOrderedDescending;

 } else {
        return NSOrderedSame;
    }

// 这样返回的是升序序列

// 反之返回的是降序序列

0 0