NSSet集合使用

集合求交集

//表示从set11中删除set12中没有的对象

//结果:set11 = {(@100,@1)}

[set11 intersectSet:set12];

集合求差集

//表示从set11中删除set12中有的对象

//结果:set11 = {(@79,@10,@"Yue",@"RunIntoLove")}

[set11 minusSet:set12];

集合求并集

//表示将set12中有而set11中没有的对象添加到set11

//结果:set11 = {(@100,@79,@10,@"Yue",@1,@"RunIntoLove",@89)}

[set11 unionSet:set12];

赋值

//表示将set12中的对象全部赋值到set11,之前会清除set11中所有的元素

//结果:set12 = {(@100,@1,@89)}

[set11 setSet:set12];

NSCountSet计数集合

NSCountSet是继承于NSMutableSet的类,NSSet(NSCountSet)是不能存在两个相同的对象的,那么遇到重复它会直接丢掉吗,不是的,它会存在一个计数器,当存在重复的,那么重复的元素的计数器就会+1,通常可以用来标记元素的个数

NSCountedSet* countSet =[NSCountedSet setWithArray:@[@1,@1,@2,@2,@2,@3]];

//可以通过API中提供的枚举器遍历

NSEnumerator* enumerator1 =[countSet objectEnumerator];

idobject;

while(object =[enumerator1 nextObject])

{

NSLog(@"我是%@,与我相同的个数是:%ld",object,[countSet countForObject:object]);

}

你可能感兴趣的:(NSSet集合使用)