OC整理

来源:互联网 发布:浴缸 知乎 编辑:程序博客网 时间:2024/04/30 08:01

今天我们学了 NSDate 方法 通过NSDate方法创建的对象 永远是 零时区的时间创建日期对象

当前时间创建NSDate

NSDate *myDate = [NSDate date];

获区两个日期的的时间间隔 时间间隔是以秒为单位

NSTimeInterval 是相当于 double

NSTimeInterval TimeInterval = [tomorrow timeIntervalSinceDate:yesterday];

NSLog(@"%f",TimeInterval/60/60/24);//原理是前面的时间 - 后面的时间 也可能出现负数

两个日期的比较 结果是枚举类型 升序 -1 相等 0 降序 1

 NSComparisonResult compare  =[tomorrow compare:yesterday];

(类型1)类型2  强制类型转换可以将类型2转换为 类型1;

日期和字符串之间可以相互转换如:

将日期格式串转化为 NSDate对像

NSString *s = [NSString stringWithFormat:@"2014年05月01日 10点23分18秒"];

创建日期格式串对象对象    

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

设置日期格式(一定要和字符串中的日期格式保持一致)

form setDateFormat:@"yyyy年MM月dd日 HH点mm分ss秒"];

NSDate *day = [form dateFromString:s];

HH表示24小时制      hh表示12小时制

MM表示月份  mm表示分钟

dd 表示当月天数 DD表示处于本年第几天

ss表示秒数

如果年份为两个y 只显示年份的后两位 若果给其他个数的y 都显示完整年份

如果MM 给两位 月份为一位时补0


我们又学了 分类(category),可以拓展类的方法 但不能添加实例变量,为原有的类扩充方法 就会成为原类的一部分. 分类也分为 .h接口部分 以及.m实现部分.  .h文件写方法的声明 .m写方法的实现

//分类定义格式 以@interface开始+扩展类名(分类名)以@end结束

例如  @interface NSString (Sort)

(中间定义方法)

@end
实现写在 .m 中 通过category可以方便的为系统添加方法 实现我们想要的但系统没有提供的操作
       


0 0
原创粉丝点击