iOS之数组的排序(升序、降序及乱序)
程序员文章站
2022-06-03 08:16:29
#pragma mark -- 数组排序方法(升序)
- (void)arraysortasc{
//数组排序
//定义一个数字数组
nsarray *array = @...
#pragma mark -- 数组排序方法(升序) - (void)arraysortasc{ //数组排序 //定义一个数字数组 nsarray *array = @[@(3),@(4),@(2),@(1)]; //对数组进行排序 nsarray *result = [array sortedarrayusingcomparator:^nscomparisonresult(id _nonnull obj1, id _nonnull obj2) { nslog(@"%@~%@",obj1,obj2); //3~4 2~1 3~1 3~2 return [obj1 compare:obj2]; //升序 }]; nslog(@"result=%@",result); } #pragma mark -- 数组排序方法(降序) - (void)arraysortdesc{ //数组排序 //定义一个数字数组 nsarray *array = @[@(3),@(4),@(2),@(1)]; //对数组进行排序 nsarray *result = [array sortedarrayusingcomparator:^nscomparisonresult(id _nonnull obj1, id _nonnull obj2) { nslog(@"%@~%@",obj1,obj2); //3~4 2~1 3~1 3~2 return [obj2 compare:obj1]; //降序 }]; nslog(@"result=%@",result); } #pragma mark -- 数组排序方法(乱序) - (void)arraysortbreak{ //数组排序 //定义一个数字数组 nsarray *array = @[@(3),@(4),@(2),@(1),@(5),@(6),@(0)]; //对数组进行排序 nsarray *result = [array sortedarrayusingcomparator:^nscomparisonresult(id _nonnull obj1, id _nonnull obj2) { nslog(@"%@~%@",obj1,obj2); //乱序 if (arc4random_uniform(2) == 0) { return [obj2 compare:obj1]; //降序 } else{ return [obj1 compare:obj2]; //升序 } }]; nslog(@"result=%@",result); }
上一篇: 逻辑运算符号
下一篇: 减肥不需要节食 学会这些技巧让你越吃越瘦