程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 求兩個自定義對象構成的數組的差集

求兩個自定義對象構成的數組的差集

編輯:C++入門知識

#import "ViewController.h"


@interface Person : NSObject

@property(nonatomic,strong)NSString* name;

-(instancetype)initWithName:(NSString*)name;

@end


@implementation Person

-(instancetype)initWithName:(NSString*)name{

self = [super init];

self.name = name;

return self;

}

@end


@implementation ViewController


- (void)viewDidLoad

{

[super viewDidLoad];

NSArray* arr1 = @[

[[Person alloc] initWithName:@"tom"]

,[[Person alloc] initWithName:@"jerry"]

,[[Person alloc] initWithName:@"david"]

];

NSArray* arr2 = @[

[[Person alloc] initWithName:@"tom"]

,[[Person alloc] initWithName:@"marry"]

,[[Person alloc] initWithName:@"gorge"]

];

//關鍵,name是自定義對象的屬性名

NSPredicate *thePredicate = [NSPredicate predicateWithFormat:@"NOT (SELF.name in %@.name)", arr2];

//求差集:arr1 - arr2

NSArray* arr1SubtractArr2 = [arr1 filteredArrayUsingPredicate:thePredicate];

for(Person* person in arr1SubtractArr2){

NSLog(@"%@",person.name);

}

}


@end


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved