【问题标题】:sorting array and objetct排序数组和对象
【发布时间】:2013-09-27 09:07:50
【问题描述】:

如何将数组中的这些值倒序排列?

_gradientArrayToWhite = [[NSArray alloc] initWithObjects:@"1", @"2", @"3", @"4", @"5", @"6", @"7", @"8", @"9", @"10", nil];

【问题讨论】:

  • 按字符串排序还是按它们代表的数字排序?对于这些特定值或任意字符串?
  • 我的问题实际上是错误的,我不需要用对象反转数组的顺序,而是浮点值......我仍然在这里写了另一个更具体的问题:stackoverflow.com/questions/19068294/…跨度>

标签: objective-c sorting nsarray


【解决方案1】:

使用NSArray的排序方式之一

NSArray * sorted = [_gradientArrayToWhite sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
    return [obj1 integerValue] < [obj2 integerValue];
}];

【讨论】:

    【解决方案2】:
    NSArray *arr = [NSArray arrayWithObjects:[NSNumber numberWithInt:1],[NSNumber numberWithInt:2],[NSNumber numberWithInt:3],[NSNumber numberWithInt:4],[NSNumber numberWithInt:5],[NSNumber numberWithInt:6],[NSNumber numberWithInt:7],[NSNumber numberWithInt:8],[NSNumber numberWithInt:9],[NSNumber numberWithInt:10], nil];
    

    这里你也可以像这样直接使用你的数组

    NSArray *arr1 = [[NSArray alloc] initWithObjects:@"1", @"2", @"3", @"4", @"5", @"6", @"7", @"8", @"9", @"10", nil];
    
    
    NSArray *revArr = [[arr reverseObjectEnumerator] allObjects];
    
    Result = <__NSArrayM 0x71348e0>(
     10,
     9,
     8,
     7,
     6,
     5,
     4,
     3,
     2,
     1
    )
    

    【讨论】:

    • 对不起,您知道这种语言中有循环吗?第一次初始化太冗长了。过于冗长。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多