Foundation框架第十弹:NSValue的常用方法
2014-12-23 20:37
218 查看
补充(NSNumber是继承于NSValue的,NSNumber只能包装数字类型,NSValue可以包装任何类型)
// ==============将任意数据类型包装成NSValue======================
// 1.NSString
NSString *name = @"Robin";
// 包装参数1:
变量的地址
// 包装参数2:
变量的数据类型,需要时用@edcode()来传入
NSValue *v = [NSValue
valueWithBytes:&name objCType:@encode(NSString)];
//
将NSValue放到数组中
NSArray *array = @[v];
//
从数组中获取NSValue
NSValue *getV = array[0];
// 转换
NSString *n ;
[getV
getValue:&n];
// 显示
NSLog(@"%@",n);
// 2.自定义结构体
Date date = {2014,12,23};
// 封装
NSValue *ns = [NSValue
valueWithBytes:&date objCType:@encode(Date)];
NSArray *array1 = @[ns];
NSValue *na = array1[0];
Date d;
[na
getValue:&d];
NSLog(@"%d-->%d-->%d",d.year,d.month,d.day);
// ==============将常见结构体包装成NSValue======================
// NSRange
NSRange range = NSMakeRange(2,
3);
// 包装
NSValue *ns1 = [NSValue
valueWithRange:range];
//
把NSValue放到NSArray中.
NSArray *array0 = @[ns1];
//
从NSArray中获取NSValue
NSValue *ns2 = array0[0];
//
从NSValue中获取原来的结构体
NSRange range1 = ns2.rangeValue;
//显示
NSLog(@"%ld,%ld",range1.location,range1.length);
// ==============将任意数据类型包装成NSValue======================
// 1.NSString
NSString *name = @"Robin";
// 包装参数1:
变量的地址
// 包装参数2:
变量的数据类型,需要时用@edcode()来传入
NSValue *v = [NSValue
valueWithBytes:&name objCType:@encode(NSString)];
//
将NSValue放到数组中
NSArray *array = @[v];
//
从数组中获取NSValue
NSValue *getV = array[0];
// 转换
NSString *n ;
[getV
getValue:&n];
// 显示
NSLog(@"%@",n);
// 2.自定义结构体
Date date = {2014,12,23};
// 封装
NSValue *ns = [NSValue
valueWithBytes:&date objCType:@encode(Date)];
NSArray *array1 = @[ns];
NSValue *na = array1[0];
Date d;
[na
getValue:&d];
NSLog(@"%d-->%d-->%d",d.year,d.month,d.day);
// ==============将常见结构体包装成NSValue======================
// NSRange
NSRange range = NSMakeRange(2,
3);
// 包装
NSValue *ns1 = [NSValue
valueWithRange:range];
//
把NSValue放到NSArray中.
NSArray *array0 = @[ns1];
//
从NSArray中获取NSValue
NSValue *ns2 = array0[0];
//
从NSValue中获取原来的结构体
NSRange range1 = ns2.rangeValue;
//显示
NSLog(@"%ld,%ld",range1.location,range1.length);
相关文章推荐
- 爬爬爬之路:OC语言(四) NSString NSSArray NSValue常用方法介绍
- oc-Foundation框架-NSValue-常用方法
- 5. 18 Objective-C 常用数据类型(NSValue NSNumber NSString )的方法
- javascript中常用的方法(总结的较好,收集)
- 分析黑客常用的9种攻击方法
- java对象转为java String的几种常用方法剖析
- ASP.NET编程技术-c#.net常用函数和方法集
- 一些非常有用的JAVA常用方法,可以省力很多啊!! xiaoyou [原作]
- Java语言编程中更新XML文档的常用方法
- Asp.NET中常用的一些优化性能的方法
- Asp.NET中常用的一些优化性能的方法
- 一些非常有用的JAVA常用方法,可以省力很多啊!!
- c#.net常用函数和方法集
- Asp.NET中常用的一些优化性能的方法
- 点阵图转矢量图常用方法
- java对象转为java String的几种常用方法剖析
- vc++中调用ADO的常用方法
- Java编程中更新XML文档的常用方法
- Java更新XML的四种常用方法简介
- 几个java常用的方法