美文网首页
将iOS中英文内容进行排序

将iOS中英文内容进行排序

作者: 布谷布谷7788 | 来源:发表于2018-11-08 11:32 被阅读0次

    当一段数组里面的字符串,需要进行排序的时候,:原文链接

    英文通过字母排序:

    中文通过拼音排序:

    这里有一个算法,直接使用就可以进行排序

    -(void)testSort

    { NSArray *stringsArray = [NSArray arrayWithObjects:@"string 1", @"你好",@"你在", @"String 11", @"上海", nil];

       static NSStringCompareOptions comparisonOptions = NSCaseInsensitiveSearch | NSNumericSearch | NSWidthInsensitiveSearch | NSForcedOrderingSearch;

        NSLocale *currentLocale = [NSLocale currentLocale];

         NSComparator finderSortBlock = ^(id string1, id string2) {

            NSRange string1Range = NSMakeRange(0, [string1 length]);

        return [string1 compare:string2 options:comparisonOptions range:string1Range locale:currentLocale];

        };

        NSArray *finderSortArray = [stringsArray sortedArrayUsingComparator:finderSortBlock];

        NSLog(@"finderSortArray: %@", finderSortArray);

    }

    输出结果:

    <__NSArrayI 0x109622d90>(

    你好,

    你在,

    上海,

    string 1,

    String 11

    )

    ---------------------

    相关文章

      网友评论

          本文标题:将iOS中英文内容进行排序

          本文链接:https://www.haomeiwen.com/subject/xbnvaftx.html