谓词

更加详细:http://blog.csdn.net/ztp800201/article/details/8116081

//判断是否满足条件

第一种

判断一个数组(array)中满足条件的

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“age < 20”];//定义谓词

for(Person *p in  array ) {

//根据谓词选出合适的 ,看是数组中有满足条件的

BOOL ret = [predicate evaluateWithObject:p];

if(ret){

NSLog (@“%@“,p);//要想打印出数组的内容 ,要在Person 类中 实现方法 -(NSString*)decription{}

}

}

第二种:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“age < 20”];//定义谓词

NSArray *filterArray = [array filteredArrayUsingPredicate:predicate];//通过谓词直接过滤,记得区分 可变数组 和不可变数组使用的 操作词是不一样的

NSLog(@“”);

//谓词可以使用格式占位符

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“age < %d”,20];//定义谓词

//谓词使用运算符((and &&)与( || or)) 这两种运算符不分大小写

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“age> 25 AND age<28”];//定义谓词

//IN 在使用的时候 {‘ ’,’ ‘ }是单引号 和逗号 ,也可以使用数组对象,在用占位符导入

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“name in  {‘jack -1’,’tom -3’,’xxx’}"];//定义谓词

//BEGINSWITH  ENDSWITH CONTAINS 关键字 大小写敏感

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“name BEGINSWITH ‘J'”];//定义谓词

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“name ENDSWITH

‘8'”];

//定义谓词NSPredicate *predicate = [NSPredicate predicateWithFormat:@“name CONTAINS

‘’a”];//定义谓词

//最实用的是 like *a*

NSPredicate *predicate = [NSPredicate predicateWithFormat:@“name like

‘*a*'”];

谓词 (NSPredicate)使用详情的更多相关文章

  1. OC中给我们提供的一个技术:谓词(NSPredicate).note

    OC中给我们提供的一个技术:谓词(NSPredicate)OC中的谓词操作是针对于数组类型的,他就好比数据库中的查询操作,数据源就是数组,这样的好处是我们不需要编写很多代码就可以去操作数组,同时也起到 ...

  2. iOS:转载:IOS谓词--NSPredicate

    IOS谓词--NSPredicate 分类: IOS应用2013-02-19 17:24 6792人阅读 评论(1) 收藏 举报 Cocoa 提供了NSPredicate 用于指定过滤条件,谓词是指在 ...

  3. OC学习篇之---谓词(NSPredicate)

    在前一篇文章中我们介绍了OC中一个重要技术通知:http://blog.csdn.net/jiangwei0910410003/article/details/41923401,今天我们在来看一下OC ...

  4. 谓词(NSPredicate)

    OC中的谓词操作是针对于数组类型的,他就好比数据库中的查询操作,数据源就是数组,这样的好处是我们不需要编写很多代码就可以去操作数组,同时也起到过滤的作用,我们可以编写简单的谓词语句,就可以从数组中过滤 ...

  5. OC 之 谓词

    NSPredicate 分类: Objective-C iOS XCode Mac2012-10-26 17:26 10557人阅读 评论(1) 收藏 举报 简述:Cocoa框架中的NSPredica ...

  6. coredata中谓词的使用

    Cocoa提供了一个类NSPredicate类,该类主要用于指定过滤器的条件,该对象可以准确的描述所需条件,对每个对象通过谓词进行筛选,判断是否与条件相匹配.谓词表示计算真值或假值的函数.在cocoa ...

  7. iOS中谓词的使用

    Cocoa提供了一个类NSPredicate类,该类主要用于指定过滤器的条件,该对象可以准确的描述所需条件,对每个对象通过谓词进行筛选,判断是否与条件相匹配.谓词表示计算真值或假值的函数.在cocoa ...

  8. 【IOS 开发】Objective-C Foundation 框架 -- 字符串 | 日期 | 对象复制 | NSArray | NSSet | NSDictionary | 谓词

    一. 字符串 API 1. NSString 用法简介 (1) NSString API 介绍 NSString 功能 : -- 创建字符串 : 使用 init 开头的实例方法, 也可以使用 Stri ...

  9. NSPredicate的使用

    简述 NSPredicate谓词条件过滤器,一般用于过滤数组数据,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取. 常用函数 创建谓词 + (NSPredicate *)predic ...

随机推荐

  1. ypzl药品质量不合格数据库-excel自动排版

    原创: qq:231469242 import xlrdimport pandas,numpyimport matplotlib.pyplot as pltimport pandas as pd #参 ...

  2. HashMap Hasptable的区别

    HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable.可能你觉得HashTable很好用,为什么不用呢? ...

  3. commons-fileupload.jar实现文件上传

      标签: uploadfileimportexceptionstringmyeclipse 2012-09-06 19:55 1497人阅读 评论(0) 收藏 举报  分类: 好东东(2)  Jav ...

  4. SearchLookUpEdit

    参考资料: 慧都控件网-DevExpress开发资源 在GridControl控件中使用SearchLookUpEdit构建数据快速输入

  5. OC初步 (一)

    OC完全兼容C, 代码后缀名一般习惯用 *.m 或 *.mm,按惯例从 "Hello,World!" 开始,我们编写一个 test.mm 文件如下: #import <Fou ...

  6. python 学习 : 一个简单的秒表

      游戏说明:绿色数字(左边表示成功停止在整秒的次数,右边表示停止的总次数) 点击stop,如果小数点后为0,即你停止的时间是整秒数,右上方斜杠左边数字加一 把代码复制到这个网页code run he ...

  7. redis使用简介

    1.redis 支持"生产者与消费者模式"."订阅模式" 2.实时数据, 用数据类型.时间戳.数据内容,以二进制形式存取 3.查询时间.查询间隔时间.查询更新时 ...

  8. Daily Scrum Meeting ——FirstDay

    一.Daily Scrum Meeting照片 二.Burndown Chart 三.项目进展 1.介绍在github上发布的issues 根据MVC三层模型,我们主要发布的是V层以及M层,C层将根据 ...

  9. php时区问题

    今天遇到一个很诡异的问题: 数据库中存的日期信息为时间戳,用php取出数据库中的日期信息,并用date()函数转化为“Y-m-d”后,发现和mysql格式化函数Date_Format()处理后的结果不 ...

  10. java 跨域

    jsonp做前端跨域需要服务器的支持的,造成json字符串前缀 var a=...或者 a[].... 实在有点麻烦,故还是后台跨域取数据好了 package com.pro.domain; impo ...