[OC Foundation框架 - 21] NSSet集合 & 集合之间的转换

时间:2023-03-08 21:50:51
[OC Foundation框架 - 21] NSSet集合 & 集合之间的转换
A.NSSet
跟NSArray一样,不可变
NSArray 自然顺序
NSSet是无序的
NSSet不允许存入重复元素,可以用来过滤重复元素
也有可变的NSMutableSet
B.集合转换
  // 1.NSArray 转换成 NSMutableArray
NSArray *array = @[@"one", @"two", @"three"];
NSMutableArray *muArray = [NSMutableArrayarrayWithArray:array];
NSLog(@"muArray = %@", muArray); // 2.NSDictionary 转换成 NSMutableDictionary
NSDictionary *dic = @{@"one":@"", @"two":@"", @"three":@""};
NSMutableDictionary *muDic = [NSMutableDictionarydictionaryWithDictionary:dic];
NSLog(@"muDic = %@", muDic); // 3.NSArray -> NSSet -> NSMutableSet
NSSet *set = [NSSetsetWithArray:array];
NSMutableSet *muSet = [NSMutableSetsetWithSet:set];
NSLog(@"muSet = %@", muSet); // 4.NSDcitionary -> NSArray
NSArray *allKeys = [dic allKeys];
NSLog(@"allKeys = %@", allKeys);
NSArray *allValues = [dic allValues];
NSLog(@"allValues = %@", allValues); // 5.NSString -> NSArray
NSString *str = @"www.baidu.com";
NSArray *array2 = [str componentsSeparatedByString:@"."];
NSLog(@"array2 = %@", array2);