需求:在一个数组里面,将在这个数组中的并且在另一个数组里面的元素过滤掉。

即:在一个数组dataArray里面,将在dataArray数组中的并且在filteredArray数组里面的元素过滤掉。

        //iOS-筛选数组内的元素//在dataArray中里面,将在dataArray中的并且在filteredArray数组里面的元素过滤掉//需要去掉的元素数组NSMutableArray *filteredArray = [[NSMutableArray alloc]initWithObjects:@"1",@"3",@"9", nil];//需要被筛选的数组NSMutableArray *dataArray = [[NSMutableArray alloc]initWithObjects:@"1",@"2",@"3",@"1",@"1",@"3",@"1",@"5",@"7", nil];/*方法一:利用NSPredicate注:NSPredicate所属Cocoa框架,在密码、用户名等正则判断中经常用到。类似于SQL语句NOT 不是SELF 代表字符串本身IN 范围运算符那么NOT (SELF IN %@) 意思就是:不是这里所指定的字符串的值*/NSPredicate * filterPredicate = [NSPredicate predicateWithFormat:@"NOT (SELF IN %@)",filteredArray];//过滤数组NSArray * reslutFilteredArray = [dataArray filteredArrayUsingPredicate:filterPredicate];NSLog(@"Reslut Filtered Array = %@",reslutFilteredArray);/*方法二:从后往前遍历数组,然后匹配删除*/int i = (int)[dataArray count]-1;for(;i >= 0;i --){//containsObject 判断元素是否存在于数组中(根据两者的内存地址判断,相同:YES  不同:NO)if([filteredArray containsObject:[dataArray objectAtIndex:i]]) {[dataArray removeObjectAtIndex:i];}}NSLog(@"Data Array = %@",dataArray);

iOS NSArray数组过滤相关推荐

  1. [iOS]NSArray:数组(NSArray)使用注意

    数组(NSArray)添加的元素必须为对象,如果是数字,则用NSNumber封装一下. 数组不能添加nil对象.

  2. IOS 之 NSArray 数组方法详解(3)

    NSArray 数组的创建 1.使用类方法创建 一个空的数组 + (id)array; 2.使用类方法创建 只有一个对象的数组 + (id)arrayWithObject:(id)anObject; ...

  3. nsarray数组越界_NSArray,NSMutableArray –目标C数组

    nsarray数组越界 NSArray and NSMutableArray are the Objective C array objects. In this tutorial we'll dis ...

  4. NSArray去重过滤

    两个 NSArray去重过滤 避免大量使用for循环 // 取两个数组交集的时候,可以先将NSArray 转换成 NSMutableSet,再通过取二者交集即可,但是需要注意一点是数组中的元素最好复写 ...

  5. iOS——NSArray

    iOS--NSArray /* NSArray.h Copyright (c) 1994-2015, Apple Inc. All rights reserved. */ #import <Fo ...

  6. 详解JavaScript数组过滤相同元素的5种方法

    详解JavaScript数组过滤相同元素的5种方法:https://www.jb51.net/article/114490.htm 转载于:https://www.cnblogs.com/bydzha ...

  7. js中数组过滤、遍历、迭代every、some、filter、map、forEach、reduce、reduceRight

    全栈工程师开发手册 (作者:栾鹏) js系列教程1-数组操作全解 js中数组过滤.遍历.迭代 数组的过滤.遍历.迭代操作中 1.过滤为将满足条件的元素筛选出来,返回数组 2.遍历为分别计算每一个元素值 ...

  8. javascript 数组过滤重复对象

    1.在数组过滤或筛选重复的数据,可以使用Hash方式, 代码如下 arrHashFilter:function (arr) {         var result = [], hash = {}; ...

  9. es6 filter() 数组过滤方法总结

    Array.every(x=>x)是每一个都要满足 Array.some(x=>x)是有一个满足. Array.find(findIndex),返回符合条件的第一个值. Array.fil ...

最新文章

  1. 转换前台javascript传递过来的时间字符串到.net的DateTime
  2. PS修改过图片上传服务器,富文本编辑器图片上传base64存数据库改为服务器图片路径...
  3. vs2010无法查看自定义的普通变量(CXX0017:错误:没有找到符号)
  4. 解析网络诊断利器SreCli-Net
  5. IE haslayout的理解与bug修复
  6. 应用软件系统程序员的三个立面
  7. JAVA入门级教学之(if语句)
  8. 云小课 | 不了解EIP带宽计费规则?看这里!
  9. 化鲲为鹏,我有话说 ,鲲鹏ARM架构的优势
  10. 斯特林公式--求n!的位数
  11. theano 后端爆内存
  12. c#虹软2.0免费人脸识别 实例
  13. 口袋妖怪模拟器android,口袋妖怪叶绿模拟器手机版
  14. 个头小本领大的员工——火车站巡检机器人
  15. 我对“渗透性测试”的理解
  16. UE4UI制作_MainMenu
  17. 关系抽取论文阅读笔记
  18. SitePoint Podcast#175:版式
  19. android 夜间模式源码,Android Support Library 之 夜间模式
  20. 教你用JavaScript制作背景图像滚动效果

热门文章

  1. 明略科技完成2亿美元E+轮融资,中俄投资基金领投,腾讯、弘卓资本等跟投
  2. 说人话,搜代码,Facebook发布神经代码搜索数据集+benchmark
  3. 数据科学中的6个基本算法,掌握它们要学习哪些知识
  4. matplotlib 入门之Image tutorial
  5. UAVStack的慢SQL数据库监控功能及其实现
  6. 关于SQL Server 2017中使用json传参时解析遇到的多层解析问题
  7. Android EventBus使用(不含源码解析)
  8. ArrayList和LinkedList的add(E)性能秘密
  9. linux后台运行和关闭、查看后台任务
  10. homebrew常用指令