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的更多相关文章

  1. oc77--结构体,NSNumber,NSValue,NSDate,NSCalendar

    // // main.m // OC中的常用结构体 // #import <Foundation/Foundation.h> int main(int argc, const char * ...

  2. NSNumber、NSValue、NSDate、NSObject

    注:OC中数组和字典只能存储OC对象不能存放基本数据类型. NSNumber NSNumber可以用来把一个基本数据类型包装成一个NSNumber类型的对象. NSNumber *number = [ ...

  3. 02-Foundation-NSMutableString、NSNumber、NSValue、NSDate、NSArray

    目录: 一.NSMutableString可变字符串 二.NSNumber数字对象 三.NSValue 四.NSDate日期对象 五.NSArray数组对象 回到顶部 一.NSMutableStrin ...

  4. OC NSNumber和NSValue和NSDate和NSData

    一 NSNumber // // main.m // 07-NSNumber // // Created by apple on 13-8-12. // Copyright (c) 2013年 itc ...

  5. NSDate和NSString的转换及判定是昨天,今天,明天

    用于uidate,picker.. +(NSDate*) convertDateFromString:(NSString*)uiDate{    NSDateFormatter *formatter ...

  6. Objective-C( Foundation框架 一 NSNumber(NSValue))

    NSNumber: 是OC中处理数字的一个类 NSValue是NSNumber的子类 如何处理: 把int,float,double  包装成一个对象 使用NSNumber的好处: 可以把基本数据类型 ...

  7. Objective - C 值对象 NSNumber和NSValue

    在进行数据处理的时候,因为对象类型的不同, 并不能进行相应的数据处理,所以必须要进行数据类型的转换,这也就是NSNumber,NSValue这两类值对象出现的原因. 简而言之,NSNumber就是实现 ...

  8. NSNumber和NSValue

    在进行数据处理的时候,因为对象类型的不同, 并不能进行相应的数据处理,所以必须要进行数据类型的转换,这也就是NSNumber,NSValue这两类值对象出现的原因. 简而言之,NSNumber就是实现 ...

  9. iOS 各种系统文件目录 临时,缓存,document,lib,归档,序列化

    /** 1:Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录 2:tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除 3 ...

随机推荐

  1. spark 编译

    http://blog.csdn.net/zyj8170/article/details/44678405

  2. android自定义之 5.0 风格progressBar

    最近做项目,用到了ProgressBar ,就想到了要使用Android5.0 的效果,就随手实现了一下. 效果图: 大概的思路: 1. 圆圈通过Canvas去绘制 2.圆圈的动画通过Animator ...

  3. 移动端 ios 长按复制兼容方案

    移动端页面,需要复制一段文字码. 在ios中,长按文字区域,默认选中的范围,超出了我长按的文字区域, 把上面的图片和下面的另一个div的文字也给我包含进来了,并不是我想要的! 举个例子: 如下图: 1 ...

  4. [git]使用GPG签名你的commit

    概述 GPG是一种加密算法,现在github支持commit使用GPG加密,从而保证提交的commit在传输的过程中没有被篡改. 一.生成GPG密钥 什么是GPG:阮一峰的GPG教程 安装GPG:br ...

  5. [python]在场景中理解装饰器

    原来我也自己通过查资料,来学习python的装饰器,但是效果不好.因为没有接触过需要用到装饰器的场景,所以 一起的资料都只停留在纸面上,但是今天偶然看到了vimer的这篇文章:http://www.v ...

  6. android和ios,音频互通方案

    好久不更新博客上,从年前从公司辞职,这半年以来,一直靠做一些外包app养活自己!也算是达成了自己年前制定的目标!可是也想着总不能一直做外包吧,所以决定做一些自己觉得有意思的app,挂到应用商店上和ap ...

  7. js-基础(1)

    js-基础(1) javascript由三部分组成:核心,DOM,BOM核心——ECMAScript,可以运行浏览器/单纯的JS引擎    console.log(‘hello’);DOM——操作HT ...

  8. Sql Server来龙去脉系列 必须知道的权限控制核心篇

    最近写了<Sql Server来龙去脉系列  必须知道的权限控制基础篇>,感觉反响比较大.这可能也说明了很多程序猿对数据库权限控制方面比较感兴趣,或者某些技术点了解的没有很透彻. 有些人看 ...

  9. 用Qt写软件系列一:QCacheViewer(浏览器缓存查看器)

    介绍 Cache技术广泛应用于计算机行业的软硬件领域.该技术既是人们对新技术探讨的结果,也是对当前软硬件计算能力的一种妥协.在浏览器中使用cache技术,可以大幅度提高web页面的响应速度,降低数据传 ...

  10. 【C#】OOP之多态那点事

    前言: 对菜鸟开发者的忠告:花一万个小时练习 Coding,不要浪费一万小时无谓地 Debugging(也就说看代码) 看上面的UML图,我们创建一个抽象的Instrument类,类中有一个抽象方法p ...