您的位置:首页 > 其它

迭代器,类型的互相转换,NSDate,集合NSSet

2015-07-23 17:45 260 查看
1,迭代器

NSEnumerator *enumerator=[arr objectEnumerator];

// NSString *str=nil;

// while(str=[enumerator nextObject]){

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

// }

//字典

//打印的是VaLue

// NSEnumerator *enumerator1=[dic objectEnumerator];

// NSString *str1=nil;

// while (str1=[enumerator1 nextObject]) {

// NSLog(@"%@",str1);

// }
2.值对象

//把基本数据装换成对象类型

// NSInteger a=10;

// NSNumber *number=[[NSNumber alloc] initWithInteger:a ];

// NSLog(@"%@",number);

// //把NSNumber->NSInteger

// NSInteger b=[number integerValue];

// NSLog(@"%ld",b);

// NSNumber *num=@10;

//NSValue

//把结构体和指针换成对象类型

//结构体的,是访问成员变量,对对象调用属性是点语法

// NSRange range={2,5};

// NSLog(@"%ld",range.length);

// //NSrange->NSValue

// NSValue *value=[NSValue valueWithRange:range];

// NSLog(@"%@",value);

//

// //NSValue->NSRange

// NSRange rangeV=[value rangeValue];

// //指针的转换

// NSInteger a=10;

// NSInteger *p=&a;

// NSValue *pointer=[NSValue valueWithPointer:p];

// NSLog(@"%@",pointer);

// NSInteger *q=[pointer pointerValue];

//拼接时间时候%@-%@的用法

// NSString *new=[NSString stringWithFormat:@"%@-%@",begin,end1];

// NSLog(@"%@",new);

3.集合NSSET

NSSet 集合

//NSSet
是无序的.

//NSSet不能有重复的元素

//集合里的元素必须是对象类型

// NSSet *set=[NSSet setWithObjects:@"2", @"2",@"7",@"4",@"8",nil];

// NSLog(@"%@",set);

// NSLog(@"%ld",set.count);

// //返回其中的某一个元素

// NSLog(@"%@",[set anyObject]);

// //集合里的元素是否包含某个元素

// NSLog(@"%d",[set containsObject:@"2"]);

// NSSet *set=[[NSSet alloc] initWithObjects:@"1",@"2",@"3",@"4", nil];

//可变的集合

// NSMutableSet *set=[NSMutableSet setWithObjects:@"1",@"2",@"3", nil];

//添加元素

// [set addObject:@"1"];

// NSLog(@"%@",set);

// //删除

// [set removeObject:@"1"];

// NSLog(@"%@",set);

//枚举遍历

// for (NSString *str in set) {

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

// }

4.NSDate
NSDate *date=[NSDate date];获取时间时间为格林时间 与我们东8区相差8个小时
无论在那个区,都是打印相对于那个的零时区的时间
NStimeZone *zone=[NSTimeZone systemTimeZone];获取一下当前所在的时区

//获取一下和0时区相差的秒数

NSInteger seconds=[zone secondsFromGMTForDate:date];

//通过相差的秒数,能获取到现在的时间

NSDate *localDate=[NSDate dateWithTimeIntervalSinceNow:seconds];
localDate就是现在的时间

NSDate *times=[NSDate dateWithTimeIntervalSince1970:0];

NSLog(@"%@",times);

//一个是明天这个时候的时间

NSDate *localDate=[NSDate dateWithTimeIntervalSinceNow:3600*32];

NSLog(@"%@",localDate);

// 昨天这个时候的时间

NSDate *localDate=[NSDate dateWithTimeIntervalSinceNow:-(3600*16)];

NSLog(@"%@",localDate);

// 时间间隔

// 对应的double类型

//计算俩个时间对象的时间间隔

NSTimeInterval interval=[localDate timeIntervalSinceDate:date];

NSLog(@"%g",interval);

NSDate *date=[NSDate date];

NSDate *localDate=[NSDate dateWithTimeIntervalSinceNow:28801];

NSTimeInterval interval=[localDate timeIntervalSinceDate:date];

if(interval<60&&interval>=0){

NSLog(@"刚刚");

}else if (interval>=60&&interval<3600){

double interval1=(NSInteger)interval/60;

NSLog(@"%g分钟前",interval1);}

//把日期和字符串的一个互相的转换

//NSDate->NSString

//第一种方式

// NSDate *date=[NSDate date];

// NSString *str=[NSString stringWithFormat:@"%@",date];

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

//第二种方式

//时间的格式

//yy-MM-dd HH-mm-ss

//y年

//M月

//d日

//H是24小时制,h 12小时制

//m
分 s 秒

//先设置一下时间的格式,要转换的时间要和格式相吻合

//

// NSDateFormatter *formatter=[[NSDateFormatter alloc] init];

// [formatter setDateFormat:@"yyy-MM-dd HH:mm:ss"];

//

// NSDate *date=[NSDate date];

// //通过格式,把指定的时间直接转换成NSString

// //通过这种方式,系统还会把时间切换成当当前时间

// NSString *strDate=[formatter stringFromDate:date];

// NSLog(@"%@",strDate);

//字符串->NSDate

//把时间又减掉8小时

// NSDateFormatter *formatter=[[NSDateFormatter alloc] init];

// [formatter setDateFormat:@"yyy-MM-dd HH:mm:ss"];

// NSString *timeStr=@"2015-7-23 17:19:10";

// NSDate *date=[formatter dateFromString:timeStr];

// NSLog(@"%@",date);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: