NSDate,NSNumber,NSValue
NSDate
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
//通过date方法创建的时间对象,对象就保存了当前的时间;
/* NSDate *now=[NSDate date];
NSLog(@"%@",now);
//在now的基础上追加多少秒
// NSDate *date= [now dateByAddingTimeInterval:10];
// NSLog(@"date=%@",date);
//获取当前所处的失去
// NSTimeZone *zone=[NSTimeZone systemTimeZone];
//获取当前时区和指定时区的时间差
// NSInteger second= [zone secondsFromGMTForDate:now];
// NSLog(@"%lu",second);
NSData *newDate=[now dateByAddingTimeInterval:28800];
NSLog(@"%@",newDate);
*/
//格式化时间
// NSDate *now=[NSDate date];
// NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
// formatter.dateFormat=@"yyyy年MM月dd日 HH时mm分ss秒 Z";
//
// NSString *str= [formatter stringFromDate:now];
// NSLog(@"%@",str);
//NSString -》NSDate
// NSDate *now=[NSDate date];
// NSLog(@"%@",now);
//把字符串转化为NSDate格式 那么dateFormat的格式,必须和字符串的时间格式一致,否则可能转换失败
NSString *str=@"2016-01-09 06:46:34 +0000";
NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
// formatter.dateFormat=@"yyyy-MM-dd HH:mm:ss Z";
NSDate *date=[formatter dateFromString:str];
NSLog(@"%@",date);
}
return ;
}
NSNumber
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
int age=;
int number=;
int value=;
//NSNumber的声明
NSNumber *ageNumber=[NSNumber numberWithInt:age];
NSNumber *numberN=[NSNumber numberWithInt:number];
NSNumber *valueV=[NSNumber numberWithInt:value];
NSArray *arr=@[ageNumber,numberN,valueV];
// NSLog(@"%@",arr);
for (NSArray *A in arr) {
NSLog(@"%@",A);
}
//把NSNumber类型的数据转换成基本数据类型
int temp=[ageNumber intValue];
NSLog(@"%d",temp);
//简写
// NSNumber *temp1=@(age);
// NSLog(@"%@",temp1);
// NSNumber *temp=@210.10;
// NSLog(@"%@",temp);
}
return ;
}
3.NSValue
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
typedef struct{
int age;
char *name;
double height;
}Person;
Person p={,"qll",1.72};
//利用NSValue包装常用结构体
// CGPoint point =NSMakePoint(10, 20);
// NSValue *value=[NSValue valueWithPoint:point];
// NSArray *arr=@[value];
// NSLog(@"%@",arr);
//<#(nonnull const void *)#>表示要包装数据类型的地址,而<#(nonnull const char *)#>表示要包装的数据类
//书写的固定格式为@encode()
NSValue *v=[NSValue valueWithBytes: &p objCType:@encode(Person)];
NSArray *arr=@[v];
NSLog(@"%@",arr);
//从已经包装好的数据类型中取出数据
Person res;
[v getValue:&res];
NSLog(@"age=%d,name=%s,height=%f",res.age,res.name,res.height);
};
return ;
}
NSDate,NSNumber,NSValue的更多相关文章
- oc77--结构体,NSNumber,NSValue,NSDate,NSCalendar
// // main.m // OC中的常用结构体 // #import <Foundation/Foundation.h> int main(int argc, const char * ...
- NSNumber、NSValue、NSDate、NSObject
注:OC中数组和字典只能存储OC对象不能存放基本数据类型. NSNumber NSNumber可以用来把一个基本数据类型包装成一个NSNumber类型的对象. NSNumber *number = [ ...
- 02-Foundation-NSMutableString、NSNumber、NSValue、NSDate、NSArray
目录: 一.NSMutableString可变字符串 二.NSNumber数字对象 三.NSValue 四.NSDate日期对象 五.NSArray数组对象 回到顶部 一.NSMutableStrin ...
- OC NSNumber和NSValue和NSDate和NSData
一 NSNumber // // main.m // 07-NSNumber // // Created by apple on 13-8-12. // Copyright (c) 2013年 itc ...
- NSDate和NSString的转换及判定是昨天,今天,明天
用于uidate,picker.. +(NSDate*) convertDateFromString:(NSString*)uiDate{ NSDateFormatter *formatter ...
- Objective-C( Foundation框架 一 NSNumber(NSValue))
NSNumber: 是OC中处理数字的一个类 NSValue是NSNumber的子类 如何处理: 把int,float,double 包装成一个对象 使用NSNumber的好处: 可以把基本数据类型 ...
- Objective - C 值对象 NSNumber和NSValue
在进行数据处理的时候,因为对象类型的不同, 并不能进行相应的数据处理,所以必须要进行数据类型的转换,这也就是NSNumber,NSValue这两类值对象出现的原因. 简而言之,NSNumber就是实现 ...
- NSNumber和NSValue
在进行数据处理的时候,因为对象类型的不同, 并不能进行相应的数据处理,所以必须要进行数据类型的转换,这也就是NSNumber,NSValue这两类值对象出现的原因. 简而言之,NSNumber就是实现 ...
- iOS 各种系统文件目录 临时,缓存,document,lib,归档,序列化
/** 1:Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录 2:tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除 3 ...
随机推荐
- Linux内核中双向链表的经典实现
概要 前面一章"介绍双向链表并给出了C/C++/Java三种实现",本章继续对双向链表进行探讨,介绍的内容是Linux内核中双向链表的经典实现和用法.其中,也会涉及到Linux内核 ...
- Hadoop入门进阶课程13--Chukwa介绍与安装部署
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan ...
- 【Spring】利用AOP来做系统性能监控
需求: 假设已经有了一些类,现在想统计每个方法调用花了多长时间,该怎么做? 思路: 我第一个想法就是去每个方法执行前后记录一下当前的时间戳,然后相减统计到日志. OK,没问题,那么这样做合理吗? 首先 ...
- iOS-给UIView添加点击事件
一.当遇到一些UIView 或者 UIView的子类时,比如点击UIImageView要放大图片等. 二.步骤: 1.首先要确保打开控件的用户交互,userInteractionEnabled设置成Y ...
- python 在sublime 中的配置
首先可以先装package control 方法——按ctrl+`,然后在命令行里复制粘贴以下代码, import urllib2,os;pf='Package Control.sublime-pac ...
- VM不能连入局域网
如果选了Host-only,那么虚拟机与跑虚拟机的宿主就无法连通了. 可以选用Bridged模式,那么虚拟机与跑虚拟机的主机连通了
- (非妙味3):浏览器window事件:及浏览各种尺寸介绍
(触发)window.onload; window.onscroll; window.onresize; (兼容)网页可视区尺寸.网页全文尺寸.滚动距离 (实例)广告块高度动态居中.回到顶部 ...
- fcitx 无法启动
困扰了好久的问题,终于解决了. 问题描述: 在fcitx的输入法配置栏里,输入法列表是空的,使用Ctrl+space无法启用任何的输入法, 当然此截图中的是有的,这是问题已经解决后的状态了. 解决方法 ...
- BZOJ 1054 广搜
1054: [HAOI2008]移动玩具 在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩 ...
- 【转】Bloom Filter布隆过滤器的概念和原理
转自:http://blog.csdn.net/jiaomeng/article/details/1495500 之前看数学之美丽,里面有提到布隆过滤器的过滤垃圾邮件,感觉到何其的牛,竟然有这么高效的 ...