#import <Foundation/Foundation.h>
/*
集合类:存储大量数据数组、字典、set集合
NSSet
1.元素是无序的,同一个对象只能保存一个。
2.都是集合,都能存放多个oc对象,只能是oc对象。
3.有个可变的子类
*/
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSSet *set=[NSSet set];
NSSet *set1=[NSSet setWithObjects:@"jack",@"rose",nil];
//存取数据的个数
NSInteger count=[set1 count];
NSLog(@"%ld",count);
//随机拿取元素
NSString *str=[set1 anyObject];
NSLog(@"%@",str);
//通过数组创建集合
NSArray *arr=[NSArray arrayWithObjects:@"jack",@"rose",@"2", @"9",@"3",nil];
NSSet *set2=[[NSSet alloc]initWithArray:arr];
//集合中是否包含内容为“1”这个字符串对象
BOOL result =[set2 containsObject:@"7"];
NSLog(@"%d",result);
//判断两个集合是否含有相同的元素
BOOL result1=[set1 intersectsSet:set2];
NSLog(@"%d",result1);
//集合1是否是集合2的子集合
BOOL result2=[set1 isSubsetOfSet:set2];
NSLog(@"%d",result2);
}
return 0;
}
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSMutableSet *set1=[NSMutableSet set];
NSMutableSet *set2=[NSMutableSet setWithObjects:@"1",@"2",nil];
NSMutableSet *set3=[NSMutableSet setWithObjects:@"a",@"2" ,nil];
//集合2减去集合3中元素,最后集合2中的元素只剩1个,值为1;
NSLog(@"%@",set2);
NSLog(@"%@",set3);
//[set2 minusSet:set3];
//NSLog(@"%@",set2);
// NSLog(@"%@",set3);
//集合2与集合3交集,最后集合2中的元素只有1个,值为2
// [set2 intersectSet:set3];
// NSLog(@"%@",set2);
// NSLog(@"%@",set3);
//集合2与结合3并集,最后集合2中的元素只有3个 1,2,a
[set2 unionSet:set3];
NSLog(@"%@",set2);
NSLog(@"%@",set3);
[set2 removeObject:@"2"];
NSLog(@"%@",set2);
[set1 setSet:set2];
NSLog(@"%@",set1);
}
return 0;
}