菜鸟教程小白 发表于 2022-12-12 23:49:16

ios - 对包含多个对象类的 NSArray 进行排序


                                            <p><p>我正在使用两种类型的实体:Person 对象和 Department 对象。 Person 对象具有姓氏、名字、部门名称和电话号码的属性。 Department 对象具有属性部门名称和电话号码。 </p>

<p>我可以使用 NSFetchedResultsControllers 来检索和排序 Person 和 Department 对象。如何将这些结果组合到一个数组中,该数组以 Person 对象的姓氏和名字以及 Department 对象的部门名称为键,如下所示:</p>

<pre><code>    Accounting                                    5-5544
    Almond, Betty         Accounting            5-5544
    Almond, Robert      Shipping                5-4345
    Brown, John         Building Maintenance    5-5566
    Building Maintenance                        5-5566 ...
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>使用排序的名字和姓氏示例</p>

<p>史密斯约翰
安徒生简
克拉克安妮
史密斯大卫
约翰逊罗斯</p>

<p>使用 NSDescriptor 排序</p>

<p>排序描述符不仅可以用于对数组进行排序,还可以用于指定 TableView 中的元素应如何排列,还可以与 Core Data 一起用于指定从获取请求返回的对象的顺序。使用排序描述符,您可以轻松地通过多个键对数组进行排序。我们将按姓氏排序数组,然后按名字排序。</p>

<pre><code>NSSortDescriptor *firstDescriptor = [ initWithKey:@&#34;surname&#34; ascending:YES];
NSSortDescriptor *secondDescriptor = [ initWithKey:@&#34;name&#34; ascending:YES];

NSArray *sortDescriptors = ;

NSArray *sortedArray = ;
</code></pre>

<p>生成的数组将如下所示:</p>

<p>安徒生简
克拉克安妮
约翰逊·罗斯
史密斯大卫
史密斯约翰</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 对包含多个对象类的 NSArray 进行排序,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/24749727/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/24749727/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 对包含多个对象类的 NSArray 进行排序