iOS OC C

常见类(三)

920 发布: 2015/11/1 13:08 本文总阅读量

集合

创建集合
NSSet *set1=[[NSSet alloc]initWithObjects:@"a",@"b",@"c",@"a", nil];
NSSet *set2=[NSSet setWithObjects:@"a",@"b",@"c", nil];
NSLog(@"set1:%@  set2:%@",set1,set2);
根据已有集合创建新的集合
NSSet *set3=[[NSSet alloc]initWithSet:set2];
NSSet *set4=[NSSet setWithSet:set2];
NSLog(@"set3:%@  set4:%@",set3,set4);
根据数组创建集合
NSArray *array=[NSArray arrayWithObjects:@"a",@"b",@"c", nil];
NSSet *set5=[NSSet setWithArray:array];
NSSet *set6=[[NSSet alloc]initWithArray:array];
NSLog(@"set5:%@  set6:%@",set5,set6);

NSSet *set7=[NSSet setWithObjects:@"a",@"b",@"c", nil];
NSSet *set8=[NSSet setWithObjects:@"a",@"b",@"c",@"x",@"y",@"z", nil];
判断两个集合中内容是不是相同
BOOL isEqual=[set7 isEqualToSet:set8];
NSLog(@"Equal:%d",isEqual);
判断两个集合是不是含有交集
BOOL isInset=[set7 intersectsSet:set8];
NSLog(@"Intersects:%d",isInset);
判断一个集合是不是另一个集合的子集
BOOL isSub=[set7 isSubsetOfSet:set8];
NSLog(@"Subset:%d",isSub);
判断集合中是不是包含某个元素
BOOL isCon=[set8 containsObject:@"z"];
NSLog(@"contains:%d",isCon);

NSSet *set9=[NSSet setWithObjects:@"a",@"b",@"c", nil];
NSLog(@"%@",[set9 allObjects]);//获取集合中所有元素
根据已有集合创建新集合,同时添加一个元素
NSSet *set10=[set9 setByAddingObject:@"d"];
NSLog(@"%@",[set10 allObjects]);

NSMutableSet *mutableSet1=[NSMutableSet setWithObjects:@"a",@"b",@"c", nil];
//添加元素
[mutableSet1 addObject:@"x"];
//删除元素
[mutableSet1 removeObject:@"a"];
NSMutableSet *mutableSet2=[NSMutableSet setWithObjects:@"a",@"b",@"c",@"e",@"m", nil];
两个集合相减
[mutableSet2 minusSet:mutableSet1];
两个集合相加
[mutableSet2 unionSet:mutableSet1];
NSLog(@"相减之后:%@",mutableSet2);

时间

创建NSDate实例,返回GMT时间
NSDate *date1=[NSDate date];
NSLog(@"%@",date1);
返回date1保存的时间与date2的时间间隔
//NSTimeInterval是一个双精度值,表示以秒为单位的时间
NSDate *date2=[NSDate dateWithTimeIntervalSinceNow:-120];
NSLog(@"%@",date2);

NSTimeInterval interDate=[date1 timeIntervalSinceDate:date2];
NSLog(@"%lf",interDate);
指定date1时间过了多少秒
NSDate *date3=[NSDate dateWithTimeInterval:300 sinceDate:date1];
NSLog(@"date3:%@",date3);
时间的比较
[date3 isEqualToDate:date1];//判断是不是相同时间;
[date3 earlierDate:date1];//返回一个较早时间
[date1 laterDate:date3];//返回一个较晚时间
把时间表示为字符串
NSString *dateString=[NSString stringWithString:[date3 description]];
NSLog(@"dateString:%@",dateString);
时间格式
NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
[formatter setAMSymbol:@"上午"];
[formatter setPMSymbol:@"下午"];
[formatter setDateFormat:@"YYYY年MM月dd日 HH:mm:ss MMM"];

/**
 * YYYY设置年份,MM设置第几个月,dd月份的第几天
 * hh:12小时制的时,HH:24小时制的时
 * mm设置分钟,ss设置秒
 * aaa:反馈用户设置的上下午格式
 * EEE:星期,zzzz时区,MMM月份
 */
NSString *time=[formatter stringFromDate:[NSDate date]];
NSLog(@"%@",time);