zoukankan      html  css  js  c++  java
  • 数组内对象根据指定属性排序

    参考:https://www.jianshu.com/p/732461f2439a

    [arr sortUsingComparator:^NSComparisonResult(id  _Nonnull obj1, id  _Nonnull obj2) {

                BTItemModel *item1 = (BTItemModel *)obj1;

                BTItemModel *item2 = (BTItemModel *)obj2;

                return [item1.rank compare:item2.rank];

    }];

    错误方式,结果是无序的:

     [arr sortUsingComparator:^NSComparisonResult(id  _Nonnull obj1, id  _Nonnull obj2) {

                BTItemModel *item1 = (BTItemModel *)obj1;

                BTItemModel *item2 = (BTItemModel *)obj2;

                if (item1.rank >  item2.rank) {

                    return NSOrderedDescending;

                } else {

                    return NSOrderedAscending;

                }

                return 0;

            }];

    规范方式:

    NSArray *sortedArray = [array sortedArrayUsingComparator: ^(id obj1, id obj2) {
     
        if ([obj1 integerValue] > [obj2 integerValue]) {
            return (NSComparisonResult)NSOrderedDescending;
        }
     
        if ([obj1 integerValue] < [obj2 integerValue]) {
            return (NSComparisonResult)NSOrderedAscending;
        }
        return (NSComparisonResult)NSOrderedSame;
    }];
  • 相关阅读:
    Linux下部署SSH登录时的二次身份验证环境记录(利用Google Authenticator)
    Linux下DNS简单部署(主从域名服务器)
    MySQL 读写分离方案-MySQL Proxy环境部署记录
    Linux系统本地yum源环境配置记录
    Swarm基于多主机容器网络 (overlay networks )
    Docker管理工具
    Linux下相关性能指标数据采集
    Docker网络解决方案
    Java的接口和抽象类
    Java 8 lambda表达式示例
  • 原文地址:https://www.cnblogs.com/huaida/p/12160806.html
Copyright © 2011-2022 走看看