确定这可能是一个非常愚蠢的问题,但我似乎无法找到答案。简单的问题关于简单的数组Objective-C
我知道如何使用排序描述符对数组进行排序,但是如何处理仅包含一系列数字的简单数组?
例如含有下列号码的数组: 21,3,11,58,32,76,19,45,7,92
我只需要按升序编号。
确定这可能是一个非常愚蠢的问题,但我似乎无法找到答案。简单的问题关于简单的数组Objective-C
我知道如何使用排序描述符对数组进行排序,但是如何处理仅包含一系列数字的简单数组?
例如含有下列号码的数组: 21,3,11,58,32,76,19,45,7,92
我只需要按升序编号。
我假设你的意思NSNumber
的NSArray
秒。
相当简单:
NSArray *unorderedNumbers; // assume exists
NSArray *sortedArray = [unorderedNumbers
sortedArrayUsingSelector:@selector(compare:)];
(参见sortedArrayUsingSelector:)。
这会导致使用compare:来比较对象(碰巧是数字)。
确实很简单。为什么最简单的事情总是让我困扰?谢谢! – Bill 2011-05-20 17:03:57
C标准库包括qsort
参见:http://www.cplusplus.com/reference/clibrary/cstdlib/qsort/
它是一个包含整数或包含'NSNumbers'的NSArray'的C数组吗? – 2011-05-18 18:05:59
当你说“简单数组”时,你的意思是一个C数组还是一个NSArray? – 2011-05-18 18:06:25
这可能有助于http://howtomakeiphoneapps.com/home/2009/3/25/how-to-sort-an-array-in-objective-c.html – 2011-05-18 18:09:34