Main.m
int main(int argc, const char * argv[])
{
/*_______________________1.NSSet集合_____________________________*/
/*
集合中的元素是无序的
*/
NSString *str1 = @"zhangsan";
NSString *str2 = @"lisi";
NSString *str3 = @"wangwu";
NSArray *arrary = @[str1,str2,str3];
//1.创建NSSet对象
//alloc方法
NSSet *set1 = [[NSSet alloc] initWithObjects:str1,str2,str3, nil];
//类方法
NSSet *set2 = [NSSet setWithObjects:str1,str2, nil];
//用集合对象中的元素初始化新的集合
NSSet *set3 = [NSSet setWithSet:set1];
//2.NSSet和数组的相互转换
//用数组对象中的元素初始化新的集合(将数组转换成集合)
NSSet *set4 = [NSSet setWithArray:arrary];
//集合转换成数组
NSArray *setArrary = [set4 allObjects];
NSLog(@"setArrary:%@",setArrary);
//3.返回元素的个数
NSUInteger count = set1.count;//[set3 count];
NSLog(@"count:%ld",count);
//4.从容器中随机取得某个元素
NSString *str = [set1 anyObject];
NSLog(@"str:%@",str);
//5.NSSet中不能存重复的对象
NSString *str4 = @"lisi";
//str3和str4元素是一样的
NSArray *arrary1 = @[str1,str2,str3,str4];
NSLog(@"arrary1:%@",arrary1);
//数组转换成集合
NSSet *set5 = [NSSet setWithArray:arrary1];
NSLog(@"set5:%@",set5);
//集合转换成数组
NSArray *arrary2 = [set5 allObjects];
NSLog(@"arrary2:%@",arrary2);
/*
集合和数组的区别:
1.数组是有序的,可以存放相同的元素,集合是无序的,不可以存放相同的元素
2.数组有下标,集合没有下标
*/
// NSMutableSet
return 0;
}