Tri du modèle de tableau iOS

 

 

@interface BookCityBookModel : NSObject

@property (nonatomic, copy) NSString bookId;


@property (nonatomic, copy) NSString *bookName;

@end

1. Trier par ordre croissant selon un seul attribut

self.dataArray = [NewMembersModel mj_objectArrayWithKeyValuesArray:response[@"data"]];
// 排序key, 某个对象的属性名称,是否升序, YES-升序, NO-降序
NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"bookName" ascending:YES];
// 排序结果
self.tempArr = [self.dataArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]];

2. Trier par ordre croissant et décroissant selon plusieurs attributs 

self.dataArray = [NewMembersModel mj_objectArrayWithKeyValuesArray:response[@"data"]];
// 排序key, 某个对象的属性名称,是否升序, YES-升序, NO-降序
NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"bookName" ascending:YES];
NSSortDescriptor *sortDescriptor1 = [NSSortDescriptor sortDescriptorWithKey:@"bookId" ascending:NO];
// 排序结果
self.tempArr = [self.dataArray sortedArrayUsingDescriptors:[NSArray arrayWithObjects:sortDescriptor, sortDescriptor1, nil]];

 

Il y a une chose à noter à propos de sortedArrayUsingDescriptors. Bien entendu, le tableau de variables de sortUsingDescriptors existe également. Lorsque vous sélectionnez la valeur de clé correspondante pour le tri, il s'agit généralement d'un tri numérique et la valeur correspondant à la clé ne peut pas être de type NSString. La valeur correspondant à la clé est de type NSString, vous devez donc utiliser la méthode suivante pour la transformer.

[self.bookArray sortUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2){
		BookCityBookModel *mode1 = obj1;
		BookCityBookModel *mode2 = obj2;
		if ([mode1.bookId integerValue] < [mode2.bookId integerValue]){
			return NSOrderedAscending;

		}else{
				return NSOrderedDescending;
			}
	}];
	NSLog(@"%@",self.bookArray);
	for (int i = 0; i<self.bookArray.count; i++) {
		BookCityBookModel *mode = self.bookArray[i];
		NSLog(@"%@",mode.bookId);
	}

 

 

 

 

 

Je suppose que tu aimes

Origine blog.csdn.net/zjpjay/article/details/88406748
conseillé
Classement