`
alex09
  • 浏览: 976500 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

NSMutableArray 中排序

 
阅读更多
使用sortedArrayUsingComparator方法

NSArray *sorted = [_scores sortedArrayUsingComparator:^(id obj1, id obj2){
    if ([obj1 isKindOfClass:[Score class]] && [obj2 isKindOfClass:[Score class]]) {
        Score *s1 = (Score*)obj1;
        Score *s2 = (Score*)obj2;

        if (s1.points > s2.points) {
            return (NSComparisonResult)NSOrderedAscending;
        } else if (s1.points < s2.points) {
            return (NSComparisonResult)NSOrderedDescending;
        }
    }

    // TODO: default is the same?
    return (NSComparisonResult)NSOrderedSame;
}];


使用sortedArrayUsingSelector方法
- (NSComparisonResult)compare:(Person *)otherObject {
    return [self.birthDate compare:otherObject.birthDate];
}

NSArray *sortedArray;
sortedArray = [drinkDetails sortedArrayUsingSelector:@selector(compare:)];


使用sortedArrayUsingDescriptors:sortDescriptors
NSSortDescriptor *sortDescriptor;
sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"birthDate"
                                              ascending:YES] autorelease];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
NSArray *sortedArray;
sortedArray = [drinkDetails sortedArrayUsingDescriptors:sortDescriptors];
分享到:
评论

相关推荐

    iOS 对NSMutableArray进行排序和过滤的实例

    在本实例中,我们将关注如何对`NSMutableArray`进行排序和过滤,这在许多应用程序中都非常常见,特别是在涉及到用户界面显示数据时。 首先,让我们来看看如何对`NSMutableArray`进行排序。在Objective-C中,我们...

    oc中数组排序

    2. NSMutableArray排序:提供了`sortUsingComparator:`和`sortedArrayUsingComparator:`两个方法来实现排序。`sortUsingComparator:`直接对原数组进行排序,而`sortedArrayUsingComparator:`返回一个新的已排序的...

    对半查找,选择排序,冒泡排序和快速排序的Objective-C实现

    在编程领域,排序和查找是基础且至关重要的概念,它们被广泛应用于各种软件开发中。Objective-C,作为苹果平台的主要编程语言,也提供了实现这些算法的接口。本篇将详细探讨对半查找(Binary Search)、选择排序...

    Object C排序算法(自定义)

    选择排序是一种简单直观的排序算法,它的工作原理是每一次从未排序的序列中找到最小(或最大)的元素,存放到排序序列的起始位置,然后再从剩余未排序的元素中继续寻找最小(或最大)的元素,然后放到已排序序列的...

    Iphone数组一些基础操作 NSArray/NSMutableArray

    总的来说,NSArray和NSMutableArray提供了丰富的操作方法,如添加、删除、查询、排序等,使得在iOS开发中处理数据变得简单。在选择使用哪种类型时,主要考虑数组是否需要在程序运行过程中被修改。如果不需要修改,应...

    NSArray排序demo

    不过,我们可以借助`NSMutableArray`(`NSArray`的可变子类)或者使用`NSArray`的分类方法`sortedArrayUsingComparator:`来实现排序。 1. 使用`sortedArrayUsingComparator:`方法: 这个方法接受一个比较器块作为...

    IOS根据汉字(或英文)按字母排序并按首字母分组

    在iOS开发中,经常需要对汉字或英文名称的数组进行排序和分组,以便于用户更方便地查找和浏览。这个任务通常涉及到Objective-C(OC)编程语言的使用,因此我们今天将深入探讨如何在iOS应用中实现这个功能。 首先,...

    Object-C数组排序

    本篇将详细讲解Object-C中的数组排序,以及如何实现一个简洁易懂的排序代码。 Objective-C提供了NSArray和NSMutableArray两种类型的数组。NSArray是不可变的,即一旦创建就不能修改;而NSMutableArray则是可变的,...

    iOS模型数组排序

    在iOS开发中,数据模型数组的排序是一个常见的需求,特别是在显示列表或表格视图时。`sortedArrayUsingComparator`是Objective-C中`NSArray`类的一个方法,用于对数组中的对象进行自定义排序。这个方法非常强大,...

    Objective—C中的排序

    在Objective-C中,排序通常涉及到`NSArray`或`NSMutableArray`对象,因为它们提供了对元素的存储和操作。数组对象可以包含各种类型的对象,包括数字(整型或浮点型)、字符串和自定义对象。 对于数字的排序,...

    IOS中文排序

    在iOS开发中,处理中文字符串排序是一个常见的需求。中文字符排序并不像英文那样简单,因为中文字符是由多个字节组成的,涉及到Unicode编码和字符集的问题。本篇文章将深入探讨iOS中如何实现中文字符串的排序,以及...

    非常棒的模块拖动 移动 app管理 排序

    首先,我们需要理解iOS中的拖动和排序机制。这通常涉及到UIPanGestureRecognizer手势识别器,它能够捕捉用户的滑动手势,并将其转化为对象的移动行为。在iOS开发中,我们可以为每个需要拖动的视图(如代表应用图标的...

    oc数组排序

    在Objective-C中,我们可以使用`NSArray`或`NSMutableArray`的`sortedArrayUsingComparator:`或`sortUsingComparator:`方法来进行自定义排序。这些方法接受一个比较器block作为参数,通过比较器来确定元素的顺序。 ...

    ios-栏目排序.zip

    栏目排序主要涉及到的数据结构是数组,通常使用NSArray或NSMutableArray来存储栏目数据。排序可以按照多种标准进行,例如按字母顺序、时间顺序或者自定义的优先级。在Objective-C中,可以使用`...

    iOS汉字按首字母排序的开源库

    在iOS开发中,我们经常会遇到需要对汉字进行首字母排序的需求,例如在通讯录应用或者搜索功能中。标题提到的“iOS汉字按首字母排序的开源库”正是为了解决这个问题而设计的。这个库提供了方便的方法,使得开发者无需...

    ios-防微信索引动画,数据模型排序.zip

    **本地排序**:在数据加载到内存后,使用`NSArray`的`sortedArrayUsingComparator:`或`sortedArrayUsingSelector:`方法,或者`NSMutableArray`的`sortUsingComparator:`或`sortUsingSelector:`方法对数据进行排序。...

    Objective C 二分查找(快速排序)

    在这个特定的案例中,我们关注的是使用Objective-C实现的两个核心算法:二分查找(Binary Search)和快速排序(Quick Sort)。下面我们将详细探讨这两个算法及其在Objective-C中的实现。 首先,快速排序是一种高效...

    object-c排序方法

    在`main`函数中,我们创建了一个不可变的`NSArray`对象`arr`,然后创建了一个可变的`NSMutableArray`对象`mutable`。`mutable`数组首先添加了一些元素,然后将`arr`的元素添加到其中。 接下来,我们对`mutable`数组...

    iOS省市区地址选择器:包含1.获取首字母 2.遍历分组 3.字母排序 4.字母索引等

    我们可以利用`NSArray`或`NSMutableArray`的`sortedArrayUsingComparator:`方法,传入一个比较器 block 来实现自定义排序。对于中文字符,我们需要先将其转换为拼音,再进行比较。这里可能会用到`NSComparator`和`...

    新手Object-C编程语言实现的冒泡排序算法入门demo

    void bubbleSort(NSMutableArray *array) { NSInteger count = array.count; for (NSInteger i = 0; i ; i++) { for (NSInteger j = 0; j ; j++) { if ([array[j] integerValue] &gt; [array[j + 1] integerValue])...

Global site tag (gtag.js) - Google Analytics