您的位置:首页 > 其它

OC之集合的创建及应用

2016-01-11 16:01 169 查看
集合类:存储大量数据数组、字典、set集合

NSSet

1.元素是无序的,同一个对象只能保存一个。

2.都是集合,都能存放多个oc对象,只能是oc对象。

3.有个可变的子类

//集合的创建
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);


NSMutableSet *set1=[NSMutableSet set];
NSMutableSet *set2=[NSMutableSet setWithObjects:@"2",@"a",nil];
NSMutableSet *set3=[NSMutableSet setWithObjects:@"a",@"1",nil];

//集合2减去集合3中元素,最后集合2中的元素只剩1个,值为1;
[set2 minusSet:set3];
NSLog(@"%@",set2);
//集合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:@"1"];
NSLog(@"%@",set2);
//用集合给集合赋值
[set1 setSet:set2];
NSLog(@"%@",set1);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: