IOS 谓词
// 谓词
Person *person = [[Person alloc]init];
person.name = @"zhang san";
person.age = 20;
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name like 'zhang1*'"];
BOOL resultFlag = [predicate evaluateWithObject:person];
NSLog(@"resultFlag = %i", resultFlag);
NSString *testStr = @"我是测试的字符串";
NSPredicate *strPredicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS '测试'"];
BOOL resultFlag1 = [strPredicate evaluateWithObject:testStr];
NSLog(@"resultFlag1 = %i", resultFlag1);
// 过滤简单集合
NSMutableArray *array = [[NSMutableArray alloc]initWithObjects:@"高级中学1班",@"初级中学1班",@"初级中学2班",@"小学六年级",@"高级中学2班", nil];
NSPredicate *predicate1 = [NSPredicate predicateWithFormat:@"SELF like '高级中学*'"];
[array filterUsingPredicate:predicate1];
NSLog(@"array = %@", array);
// 过滤对象集合
Person *person1 = [[Person alloc]init];
person1.name = @"student1";
person1.age = 20;
Person *person2 = [[Person alloc]init];
person2.name = @"student2";
person2.age = 21;
Person *person3 = [[Person alloc]init];
person3.name = @"student3";
person3.age = 22;
Person *person4 = [[Person alloc]init];
person4.name = @"student4";
person4.age = 23;
NSMutableArray *studentArray = [[NSMutableArray alloc]initWithObjects:person,person1,person2,person3,person4, nil];
NSLog(@"studentArray = %@", studentArray);
// NSPredicate *predicate2 = [NSPredicate predicateWithFormat:@"name CONTAINS 'student'"];
// [studentArray filterUsingPredicate:predicate2];
// NSLog(@"studentArray = %@", studentArray);
//
// NSPredicate *predicate3 = [NSPredicate predicateWithFormat:@"age > 21"];
// [studentArray filterUsingPredicate:predicate3];
// NSLog(@"studentArray = %@", studentArray);
// 谓词中使用占位符 %K - 属性名占位符 %@ - 属性值占位符
NSPredicate *predicate4 = [NSPredicate predicateWithFormat:@"%K CONTAINS %@", @"name", @"student"];
[studentArray filterUsingPredicate:predicate4];
NSLog(@"studentArray = %@", studentArray);
IOS 谓词的更多相关文章
- iOS:转载:IOS谓词--NSPredicate
IOS谓词--NSPredicate 分类: IOS应用2013-02-19 17:24 6792人阅读 评论(1) 收藏 举报 Cocoa 提供了NSPredicate 用于指定过滤条件,谓词是指在 ...
- ios - 谓词的使用
谓词在搜索的时候非常管用.简单示例代码如下: 分类Person.h文件 #import <Foundation/Foundation.h> @interface Person : NSOb ...
- iOS 谓词讲解
1.NSPredicate (1)比较运算符 1.比较运算符 > .< .== . >= .<= . != 运算符还可以跟逻辑运算符一起使用,&& , || ...
- iOS 谓词(NSPredicate)的应用
Cocoa中谓词(Predicate)提供了一个通用的查询方式处理数据,可以获取和指定数据的过滤形式,Cocoa实际开发中可以是使用NSPredicate及其父类NSComparisonPredica ...
- IOS自动化定位方式
原文地址http://blog.csdn.net/wuyepiaoxue789/article/details/77885136 元素属性的介绍 type:元素类型,与className作用一致,如: ...
- 关于UI自动化IOS元素定位方法说明
1. 元素属性介绍 下图是通过weditor定位的微博的"我的钱包",各属性如下图: className:元素类型,如:XCUIElementTypeButton isEnable ...
- (转载)中文Appium API 文档
该文档是Testerhome官方翻译的源地址:https://github.com/appium/appium/tree/master/docs/cn官方网站上的:http://appium.io/s ...
- 中文Appium API 文档
该文档是Testerhome官方翻译的源地址:https://github.com/appium/appium/tree/master/docs/cn官方网站上的:http://appium.io/s ...
- appium desktop
Appium-desktop 下载地址:https://github.com/appium/appium-desktop/releases 一般功能 这些能力跨越多个驱动因素. 仅限Android 这 ...
随机推荐
- 【BZOJ】3771: Triple
http://www.lydsy.com/JudgeOnline/problem.php?id=3771 题意:n个带价值互不相同的物品,每次可以取1.2.3个物品,问能得到的所有的价值和这个价值的方 ...
- JS:原型
function Box(){ } //使用字面量的方式创建原型对象,这里{}就是对象,是Object, new Object相当于{} Box.prototype = { name:" ...
- 【POJ3667】Hotel
Description The cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and e ...
- C#后台如何获取客户端访问系统型号
ASP.NET获取客户端.服务器端基础信息 . 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:P ...
- C# PInvoke(DllImport使用) 进阶教程(一)转
我们曾经熟悉的WindowsAPI, 我们曾经花费了大量精力写的代码,难道我们就要轻易放弃吗 不过当下微软已经把向下兼容性放在很重要的位置.C#程序员使用已有的代码来作为自己程序的一部分是很普通的事情 ...
- 部署node程序并维持正常运行时间
12.2部署的基础知识 假定你创建了一个想要展示的Web程序,或者创建了一个商业应用,在把它放到生产环境中之前需要测试一下.你很可能会从一个简单的部署开始,然后再做些工作让它的正常运行时间和性能达到最 ...
- android开发期间使用真机调试但系统无法识别出真机
前言 前些天重装了系统,好不容易把所有的软件装好,结果发现打开android studio真机调试却出了问题. 一.症状: 1.手机端设置完全没问题(打开了调试模式......) 2.电脑端右下角不出 ...
- HDU3732 背包DP
Ahui Writes Word Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- Daily Scrum 10.27
今天是星期天,但大家都没有放松,还是抽出了一定的时间来完成任务.可以感觉出来在编译作业的压力下大家的热情不是很高涨,希望大家坚持下去. 下面是今天的Task统计: 下面是所有迭代的状态:
- backbone学习笔记一
backbone是一个MVC单页面框架,针对传统的WEB开发B/S架构的缺点,即通过表现层的浏览器,功能层的WEB服务器,数据层的数据库服务器构架,而操作渲染过程太过复杂.