iOS对比问题
2020-04-30 本文已影响0人
忆一曲肝肠断
iOS对比问题包括比较两个NSDate相差多少小时,比较两个CGRect/CGSize/CGPoint是否相等,判断两个rect是否有交叉,判断一个字符串是否包含另一个字符串,判断字典中是否包含某个key值,等等。
比较两个NSDate相差多少小时
NSDate* date1 = someDate;
NSDate* date2 = someOtherDate;
NSTimeInterval distanceBetweenDates = [date1 timeIntervalSinceDate:date2];
double secondsInAnHour = 3600;
// 除以3600是把秒化成小时,除以60得到结果为相差的分钟数
NSInteger hoursBetweenDates = distanceBetweenDates / secondsInAnHour;
比较两个CGRect/CGSize/CGPoint是否相等
if (CGRectEqualToRect(rect1, rect2)) { // 两个区域相等
// do some
}
if (CGPointEqualToPoint(point1, point2)) { // 两个点相等
// do some
}
if (CGSizeEqualToSize(size1, size2)) { // 两个size相等
// do some
}
判断两个rect是否有交叉
if (CGRectIntersectsRect(rect1, rect2)) {
}
判断一个字符串是否包含另一个字符串
// 方法一、这种方法只适用于iOS8之后,如果是配iOS8之前用方法二
if ([str containsString:otherStr]) NSLog(@"包含");
// 方法二
NSRange range = [str rangeOfString:otherStr];
if (range.location != NSNotFound) NSLog(@"包含");
判断字典中是否包含某个key值
if ([dic objectForKey:@"yourKey"]) {
NSLog(@"有这个值");
} else {
NSLog(@"没有这个值");
}
是不是很简单,每天更新小功能,记得点赞加关注哦