NSDate类以及category
来源:互联网 发布:淘宝店铺专业刷钻 编辑:程序博客网 时间:2024/06/17 03:12
1.创建日期对象 (1) 创建的NSDate对象,获得的永远是0时区的时间,东八区,加8个小时 NSDate *date1 =[NSDate date]; NSLog(@"%@",date1); (2) 创建明天此时的日期,后一天 时间间隔是以秒为单位 NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:24*60*60]; NSLog(@"%@",date2); (3) 创建昨天此时的日期,前一天 NSDate *date3 = [NSDate dateWithTimeIntervalSinceNow:-24*60*60]; NSLog(@"%@",date3); (4) 获取两个日期的时间间隔(date2和date3的时间间隔) NSTimeInterval timeInterval = [date2 timeIntervalSinceDate:date3]; NSLog(@"%f",timeInterval /60 /60 /24); NSTimeInterval timeInterval2 = [date3 timeIntervalSinceDate:date2]; NSLog(@"%f",timeInterval2 /60 /60 /24); (5) 比较日期的早晚 (1)获取两个日期中较早的日期 NSDate *earlierDate = [date2 earlierDate:date3]; NSLog(@"%@",earlierDate); (2)获取两个日期中较晚的日期 NSDate *laterDate = [date2 laterDate:date3]; NSLog(@"%@",laterDate); (3)两个日期的比较 NSComparisonResult result = [date2 compare:date3]; NSLog(@"%ld",result); 例子: // [NSDate dateWithTimeInterval:<#(NSTimeInterval)#> sinceDate:<#(NSDate *)#>] NSDate *date1 = [NSDate date]; NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:24*50*60]; NSTimeInterval time = [date2 timeIntervalSinceDate:date1]; if (time < 60) { NSLog(@"刚刚"); }else if( time < 3600){ NSLog(@"%d分钟前",(int)time/60); }else if(time <= 3600*24){ NSLog(@"%d小时前",(int)time/3600); }else{ NSLog(@"%d天前",(int)time/3600/24); } 2.NSDateFormatter 是一个日期格式类,将日期以一定的格式进行转换,(原理:转换成字符串),另外也可以将日期格式串转换成NSDate对象 NSDate *date = [NSDate date]; (1) 创建日期格式类对象 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 指定日期格式 HH 表示24小时制, hh 表示12小时制 MM 表示月份 mm 表示分钟 DD 表示当天处于本年的第几天 dd 表示当月天数 ss 表示秒数 如果年份为两个y,则只显示年份的后两位,如果给其他个数的y,都是显示完整的年份 例如:MM 如果给两位,则月份如果是一位时,前面补0 [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; [formatter setTimeZone:] (2) 设置日期的格式 [formatter setDateStyle:NSDateFormatterFullStyle]; 设置时间的格式 [formatter setTimeStyle:NSDateFormatterFullStyle]; (3) 将日期按照指定格式转换为日期格式 NSString *dateStr = [formatter stringFromDate:date]; NSLog(@"%@",dateStr); (1) 将日期格式串转换成NSDate对象 //@"2008-08-08 20:08:08" NSString *dateStr =@"2014年05月08日 10点23分18秒"; (2) 创建日期格式化对象 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; (3) 设置日期格式(一定要和日期格式串中日期的格式保持一致) [formatter setDateFormat:@"yyyy年MM月dd日 HH点mm分ss秒"]; (4) 将格式字符串转换成NSDate对象 NSDate *date = [formatter dateFromString:dateStr]; NSLog(@"%@",date); NSString *str = [NSString string]; [str sayHi]; NSArray *arr = @[@"dd",@"aa",@"cc",@"ff"]; //数组升序排序 NSArray *arrAscending = [arr sortedArrayUsingSelector:@selector(compare:)]; NSLog(@"%@",arrAscending); 3.分类 ,类目,category 目的 是为没有源代码的类添加方法(只能添加方法,不能添加实例变量) 是扩充一个类的功能的方式之一,为原有类扩充的方法会成为原类的一部分,使用即可 分类也分为.h(接口部分) 以及.m(实现部分) .h文件中填写方法的声明,.m文件中填写方法的实现 分类定义格式: @interface开头 + 扩展类的类名(分类名) @end结束
0 0
- NSDate类以及category
- category(类目)的用法,NSDate,NSTimeInterval类的使用
- oc NSDate / Category类目 / 延展
- iOS 之NSDate的Category
- iOS 之NSDate的Category
- 类别 category 以及类扩展
- day7: 类的扩展 NSDate NSDateFormatter Category Extension延展 Protocol协议 delegate代理
- OC 7 Category分组 Extension延展 protocol协议 NSDate日期类
- Objective-C---7---NSDate Protocol Category
- OC第七天 --- NSDate Category Extension Protocol
- OC语言NSDate的使用以及类的扩展
- Objc-C 知识点回顾 八 NSDate、 Extension、Category、Delegate
- NSDate和NSDateFormatter的使⽤、Category、Extension、Protocol、delegate
- Category使用以及使用场景
- OutMan——Foundation框架中的NSDate类、NSCalendar类以及NSFileManager类
- NSDate(时间类)以及和它相关的一些类的使用
- 黑马程序员——Foundation框架——包装类以及NSDate
- NSDate类总结
- DevExpress 控件使用技巧
- EGOTableViewPullRefresh 下拉刷新
- 检索 - 线性表
- [转]套接字选项
- TCP建立连接_legend050709
- NSDate类以及category
- 虚拟化对网络的要求
- Hibernate HQL语句总结
- ios的post提交
- excel 2007 冻结单元格
- GotW #89 Solution: Smart Pointers
- 有一个数组,数组中有13个元素,先将该数组进行分组,每3个元素为一组,分为若干组,最后用一个数组统一管理这些分组.(要动态创建数组).
- 手机app以数据流格式传图片php接受并保存服务器
- itoa和atoi的用法及功能