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 这 ...
随机推荐
- [Java] java.util.Arrays 中使用的 sort 采用的算法 (转)
http://book.douban.com/annotation/15154366/Q: java.util.Arrays 中使用的 sort 采用的是什么算法? A: java中Arrays. ...
- NOIP 2012 Day2T2 借教室题解
NOIP 2012 Day2T2 借教室题解 题目传送门:http://codevs.cn/problem/1217/ 题目描述 Description 在大学期间,经常需要租借教室.大到院系举办活动 ...
- CF 66D. Petya and His Friends
题目链接 java的水题,特判啊...依旧无法1Y. import java.util.*; import java.math.*; public class Main { public static ...
- SRM 594 DIV1 250
可能开始宿舍比较乱,思绪静不下来...想了大半个小时,终于确定了应该暴力+DP,然后写了枚举除数,和被除的版本..这样,还敲错了个字母,第一次提交还100多,修改提交还有75.多,最后想到,貌似不打对 ...
- 【Eclipse】 Alt+/ 代码提示问题解决方案
一般情况下alt+/有代码提示作用,还有代码提示的快捷代码也不是alt+/,因此要恢复代码提示用alt+/.需要做两件事. 在 Window - Preferences - General - Key ...
- NOI模拟赛Day5
T1 有and,xor,or三种操作,每个人手中一个数,求和左边进行某一种运算的最大值,当t==2时,还需要求最大值的个数. test1 20% n<=1000 O(n^2)暴力 test2 2 ...
- html学习:插入优酷视频
第31期 读反心灵鸡汤 认清自己 擦,为什么不行??? <p>第31期 读反心灵鸡汤 认清自己</p> <div id="youku"> < ...
- 搜索框js样式(通用型)
HTML部分代码: -------------------------------------------------------------- <div class="search_ ...
- maven创建web工程,并导入到eclipse中
maven版本:3.1.0,eclipse版本:4.3 JDK:1.7 创建工程名是sa的maven工程 mvn archetype:create -DgroupId=com.bing-Dartifa ...
- Address already in use:JVM_Bind
1.原因:端口被占用 2.解决方式: 方式一:重启电脑 方式二:方式一不行执行方式二 双击Tomcat server 将Ports下HTTP/1.1对应的Port Number 改为其他值 备注: ...