美文网首页
iOS 数组集合操作(交集,并集,差集,子集)

iOS 数组集合操作(交集,并集,差集,子集)

作者: 暗夜行者K | 来源:发表于2021-04-25 09:39 被阅读0次

求数组的 交集,并集,差集

NSArray*array1=@[@"1",@"2",@"3"];

NSArray*array2=@[@"1",@"5",@"6"];

NSMutableSet*set1=[NSMutableSet setWithArray:array1];

NSMutableSet*set2=[NSMutableSet setWithArray:array2];

[set1 unionSet:set2];

//取并集后 set1中为1,2,3,5,6[set1 intersectSet:set2];

//取交集后 set1中为1[set1 minusSet:set2];//取差集后 set1中为2,3,5,6

判断一个数组是否为另一个数组的子集

NSArray*array3=@[@"1",@"2"];

NSArray*array4=@[@"1",@"2",@"6"];

NSSet*set3=[NSSet setWithArray:array3];

NSSet*set4=[NSSet setWithArray:array4];

BOOL isSub=[set3 isSubsetOfSet:set4];//isSub为YES

判断某个对象是否在某个数组中

延伸

NSArray 用于对象有序集合(数组

NSSet 用于对象无序集合      (集合)

NSDictionary用于键值映射(字典

以上三种集合类是不可变的(一旦初始化后,就不能改变)

以下是对应的三种可变集合类(这三种可变集合类是对应上面三种集合类的子类):

NSMutableArray

NSMutableSet  可修改的集合。主要用于集合运算(并集,交集,差集)

NSMutableDictionary 允许用户添加和删除key和value

参考自:https://www.jianshu.com/p/5eb0cc6505f6

相关文章

网友评论

      本文标题:iOS 数组集合操作(交集,并集,差集,子集)

      本文链接:https://www.haomeiwen.com/subject/lttdrltx.html