//可以认为数组的排序方法sortUsingComparator 、sortedArrayUsingComparator的参数是一个block,根据block中的返回值对数组中的对象的index进行排序,而我们也可以手动控制,当返回值为NSOrderedDescending时,将会按index对其进行逆向排序,当返回值为NSOrderedAscending则维持原顺序不变,所以我们可以手动控制
//1.sortedArrayUsingComparator这个方法本身就是按递增的方式排序。 2.返回的返回值(NSOrderedAscending 不交换,NSOrderedSame 不交换,NSOrderedDescending 交换)。 例如:object1 < object2 返回:NSOrderedDescending 则交换(变为object2,object1),以保证安方法本身升序。返回NSOrderedAscending,两者不交换。
[_groups sortUsingComparator:^NSComparisonResult(YLTeam * _Nonnull obj1, YLTeam * _Nonnull obj2) {
// return [obj1.name compare:obj2.name] == NSOrderedAscending ? NSOrderedAscending : NSOrderedDescending;
// return [obj1.name compare:obj2.name];
// return [obj1.name compare:obj2.name] == NSOrderedDescending ? NSOrderedDescending : NSOrderedAscending;
//这三个这么写其实是一样的,效果都是让升序
//下边是降序
return [obj2.name compare:obj1.name];
网友评论