1.类目为系统内部的类或者是没有源代码的类添加方法,不有添加实例变量

2.添加的方法会成为原类的一部分,子类照样可以使用

3.类目的文件名为原类名+文件名

4.既可以添加实例方法,也可以添加类方法

Xcode工程下;

1 command + N 新建

2 选择 Objectiove-C File

3 File:  设置新建的类的名字; File  Type:Category(选择) Class:(选择具体要创建的类名)

//关于日期的一些设置:

//NSDate 这个类 是Foundation框架中表示日期的类

//获取当前时间,打印信息包含,年月日 时分秒 以及时区。零时区时间

NSDate *nowDate = [NSDate date];

NSLog(@"nowDate is %@",nowDate);

//获取明天当天的时间

NSDate *tomorrow = [NSDate dateWithTimeInterval:24*60*60 sinceDate:nowDate];

NSLog(@"tomorrow is %@",tomorrow);

NSTimeInterval seconds = [nowDate timeIntervalSinceDate:tomorrow];

NSLog(@"%.2f",seconds);//一年一共的秒数

NSTimeInterval time = [nowDate timeIntervalSince1970];

NSLog(@"%.2f",time);

//NSDateComponentsFormatter 创建日期格式类,作用是 将NSDate对象 与 NSString 对象 互转

//1 创建一个 日期格式的对象

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

//2 设置转化格式

/*

1 y 年

2 M 月

3 d 日

4 H 24小时 h(am/pm 12小时)

5 m 分

6 s 秒

*/

[dateFormatter setDateFormat:@"yyyy-mm-dd HH:mm:ss"];

//使用日期格式对象 完成转换

//1 将日期对象转化为字符串对象

NSString *str = [dateFormatter stringFromDate:nowDate];//日期型转化为字符型

NSLog(@"str is %@",str);

NSLog(@"----1");

//2 将字符串转化为对象

NSDate *date = [dateFormatter dateFromString:@"2016-01-01 11:11:33"];

NSLog(@"date is %@",date);

//此方法是把 日期类型的数据转化为  字符串类型

+ (NSString *)stringWithDate:(NSDate *)date formatter:(NSString *)formatter{

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setDateFormat:formatter];//设置日期格式

NSString *string = [dateFormatter stringFromDate:date];//日期型转化为字符型

return string;

}

//此方法是把字符串类型的数据  转化为日期类型的数据

+ (NSDate *)dateWithDateStringT:(NSString *)string{

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//必须有的步骤创建格式

NSDate *date = [dateFormatter dateFromString:string];

return date;

}

//字符串转化为日期,并且字 符串的格式 可以灵活使用 在外部写

+ (NSDate *)dateWithDateString:(NSString *)string formatter:(NSString *)formatter{    //类方法

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setDateFormat:formatter];//必须有的步骤..灵活的使用

NSDate *date = [dateFormatter dateFromString:string];

return date;

}

Objective - C - 添加类目 - NSDate的更多相关文章

  1. Runtime学习与使用(一):为UITextField添加类目实现被键盘遮住后视图上移,点击空白回收键盘

    OC中类目无法直接添加属性,可以通过runtime实现在类目中添加属性. 在学习的过程中,试着为UITextField添加了一个类目,实现了当TextField被键盘遮住时视图上移的功能,顺便也添加了 ...

  2. ECshop网点程序优化-后台添加类目自动选择上次父类目并计算Sort Order

    如果在ECshop后台批量添加过大量类目的人都能体会到是多么的不方便(这点还是要说一下ECshop的产品经理,细节上还是要多注意),每次添加都需要在几百个类目里面找到要添加的父类目也是一个麻烦事,比如 ...

  3. iOS类目、延展和协议

    类目:为已知的类增加新的方法:注意:类目里面只能写方法,不能写声明和属性,所以,类目不能作为接口来用 1.类目无法向已有类中添加实例变量.2.如果类目中的方法和已有类中的方法名称冲突时,类目中的方法优 ...

  4. objective-c 类目(Category)和延展(Extension)

    类目的基本概念: 如果有封装好的一个类,随着程序功能的增加,需要在类中增加一个方法,那我们就不必在那个类中做修改或者再定义一个子类,只需要在用到那个方法时添加一个该类的类目即可. 1.在类目定义的方法 ...

  5. 使用runtime关联对象将视图添加到视图的类目里

    //get方法 - (RJCircularLoaderView*)rj_circularLoaderView { RJCircularLoaderView *loaderView = objc_get ...

  6. 01 《i》控制字体大小 v-for循环绑定类名 v-bind 结合三目运算 动态添加类

    1==>控制字体图标的大小用 font-size:16px; <i class="el-icon-arrow-left right-show-aside-icon"&g ...

  7. Objective-C中的类目,延展,协议

    Objective-C中的类目(Category),延展(Extension),协议(Protocol)这些名词看起来挺牛的,瞬间感觉OC好高大上.在其他OOP语言中就没见过这些名词,刚看到这三个名词 ...

  8. OC中协议, 类目, 时间, 延展, 属性

    只有继承和协议需要引IMPORT "头文件"; 必须接受marryprotocol协议, id<marryprotocol>基于类型的限定, 才能给实例变量赋值 @pr ...

  9. iOS -类目,延展,协议

    1.类目 类目就是为已存在的类添加新的方法.但是不能添加实例变量.比如系统的类,我们看不到他的.m文件,所以没有办法用直接添加方法的方式去实现. @interface NSMutableArray ( ...

随机推荐

  1. PHP MVC简单介绍,对PHP当前主流的MVC做了一个总结

    东抄西抄,对PHP当前主流的MVC做了一个总结PPT. 希望对初学者有点帮助! PHP MVC初步.ppt

  2. List的Capacity

    Capacity 在.NET中List的容量应该只是受到硬件限制. 属性Capacity的真正含义,是创建List时给它预分配的容量. 一旦项的数量超过了当前的Capacity,Capacity会以 ...

  3. JMeter Http测试计划

    一.新建Http测试计划 二.添加线程组 设定5个线程,循环2次 三.添加Http请求 以百度为例: 四.添加监听:察看结果树 五.执行测试 5个用户,循环2次,共发了10个请求.

  4. ajax-向服务器发送请求

    ajax-向服务器发送请求 1.将请求发送到服务器,使用XMLHttpRequest对象的 open() 和 send() 方法.     xmlhttp. open(method,url,async ...

  5. NFinal中增加生成页面自动带入js和css

    增加在WebCompiler.aspx页面中的application.CreateCompile(true);方法里. //写aspx页面的自动提示层 #region 插入js&css com ...

  6. 使用Navicat连接数据库,不能创建外键

    最近在学习python中遇到这样的情况,使用Navicat连接MySQL,为表结构创建外键时,出现了创建外键就消失,而且外键也没有创建成功的情况. 在网上找了些资料,最后发现是MySQL引擎的问题.由 ...

  7. php 获取远程图片保存到本地

    php 获取远程图片保存到本地 使用两个函数 1.获取远程文件 2.把图片保存到本地 /** * 获取远程图片并把它保存到本地 * $url 是远程图片的完整URL地址,不能为空. */ functi ...

  8. Django进阶篇(二)

    中间件 解析 django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后, django会根据自己的规则在合适的时机执行中间件中相应的方法. 在dja ...

  9. (转)打印相关_C#图片处理Bitmap位图缩放和剪裁

    原文地址:http://blog.sina.com.cn/s/blog_6427a6b50101el9d.html 在GDI+中,缩放和剪裁可以看作同一个操作,无非就是原始区域的选择不同罢了. /// ...

  10. QTP操作excel文档

    对于QTP操作excel的大前提是,保证组建服务里的DCOM配置里存在 microsoft excel application ,具体的查看方式是,在运行框中输入dcomcnfg,然后会打开组件服务的 ...