黑马程序员___Foundation__NSNumber/NSDate/NSValue

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

NSNumber

 

因为集合类中和NSString中是不能写入C基本数据类型的,所以可以利用NSNumber把基本数据类型包装成一个OC对象

 

把一个基本数据类型转化成OC对象

NSNumber *num = [NSNumber numberWithInt:10]

 

把OC对象转化成10进制的基本数据类型

 

int a = [num intValue]

 

类似的还有其他的基本数据类型

   

 NSNumber *n = [NSNumber numberWithDouble:10.5];

    

    

 int d = [n doubleValue];

 

快速包装一个基本数据类型

 

@20

 

int a = 10

@q

 

NSNumber之所以能包装基本数据类型为对象,是因为继承了NSValue

 

NSValue可以包装一些复杂的数据类型,比如结构体,枚举

 

结构体--->OC对象

    

 CGPoint p = CGPointMake(10, 10);

    

将结构体转为Value对象

 

 NSValue *value = [NSValue valueWithPoint:p];

 NSArray *array = @[value ];

    

将value转为对应的结构体

  

[value pointValue];

    

 

NSDate

 

创建一个时间对象

 

NSDate *date = [NSDate date];

 

创建一个比data晚5秒的时间对象

NSDate *date2 = [NSDate dateWithTimeInterval:5 sinceDate:date];

 

从1970开始走过的秒数

NSTimeInterval seconds = [date2 timeIntervalSince1970]

 

日期格式化类

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]

 

设置时间格式

formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";

 

创建一个自定义时间格式的时间对象  

NSString *time = @"2011/09/10 18:56"

NSDate *date = [formatter dateFromString:time]

 

转载于:https://www.cnblogs.com/jia694600474/p/4012799.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值