iosfabs
1. iOS如何将一个日期字符串转换为NSDate或者自己想要的日期格式
可取得日期字符串"Wed May 2 22:27:08 +0800 2012", 想做日期计算,想转成NSDate,根据网上资料,可先设置对应的NSDateFormatter,然后再从其转成对应的NSDate, 对应的代码片段如下:
NSString* dateStr = @"Wed May 2 22:27:08 +0800 2012";
NSDateFormatter* formater = [[NSDateFormatter alloc] init];
[formater setDateFormat:@"EEE MMM d HH:mm:ss zzzz yyyy"];
NSDate* date = [formater dateFromString:dateStr];
NSLog(@"%@", date);
//NSDate* now = [NSDate now];
double inter = fabs([date timeIntervalSinceNow]);
if( inter < 60)
NSLog(@"1 mins ago!");
else if(inter < 60*60)
NSLog(@"1 hours ago!");
else if(inter < 60*60*24)
NSLog(@"1 days ago!");
NSLog(@"interval is %f min", inter/60);
2. 上面代码在真机上运行后,发现取得date 为NULL,模拟器正常显示,上网搜索后发现需要设置local, 果然设置后,真机正常
NSLocale* local =[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease];
[formatter setLocale: local];
2. iOS round函数 需要导入什么框架
iOS round函数是在默认的math.h文件中的。
Objective-C做为ANSI C的扩展,使用C标准库头文件<math.h>中定义的数学常量宏及数学函数来实现基本的数学计算操作,所以不必再在Cocoa Foundation中寻找相应的函数和类了。
常用函数:
//指数运算
NSLog(@"%.f", pow(3,2) ); //result 9
NSLog(@"%.f", pow(3,3) ); //result 27
//开平方运算
NSLog(@"%.f", sqrt(16) ); //result 4
NSLog(@"%.f", sqrt(81) ); //result 9
//上舍入
NSLog(@"res: %.f", ceil(3.000000000001)); //result 4
NSLog(@"res: %.f", ceil(3.00)); //result 3
//下舍入
NSLog(@"res: %.f", floor(3.000000000001)); //result 3
NSLog(@"res: %.f", floor(3.9999999)); //result 3
//四舍五入
NSLog(@"res: %.f", round(3.5)); //result 4
NSLog(@"res: %.f", round(3.46)); //result 3
NSLog(@"res: %.f", round(-3.5)); //NB: this one returns -4
//最小值
NSLog(@"res: %.f", fmin(5,10)); //result 5
//最大值
NSLog(@"res: %.f", fmax(5,10)); //result 10
//绝对值
NSLog(@"res: %.f", fabs(10)); //result 10
NSLog(@"res: %.f", fabs(-10)); //result 10
这里没有列出的三角函数也是属于C标准数学函数的一部分,也可以在<math.h>中查阅。