排序列表数组问题

时间:2011-06-01 15:57:14

标签: iphone sqlite

在对数组进行排序时,得到:1,10,2,3,4,5,6,7,8,9。出了什么问题?

我的代码是:

        NSArray *sortedArray = [optionKeys sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];

其中optionKeys为:7,3,8,4,9,5,1,6,2,10

我也尝试了CaseInsensitiveCompare:并得到了相同的结果。

3 个答案:

答案 0 :(得分:1)

字符串比较将在1之后放置10。您需要使用数字比较函数。这可能有所帮助:How to let the sortedarrayusingselector using integer to sort instead of string

答案 1 :(得分:0)

您正在进行字符串排序而不是数字排序。请参阅this answer

答案 2 :(得分:0)

查看此answer。您想要进行数字排序而不是字符串排序。