Object-C 通过随机数并四舍五入保留两位小数获取NSNumber
在学习Object-C 过程中碰到需要生成随机数的,并且还要保留小数点后指定位数,往上搜索没有一个统一的答案, 自己尝试过后如下解决
首先从c代码测试来看结果
?
#include <stdio.h>#include <stdlib.h>#include <time.h>int main (int argc, const char * argv[]){ int i; srand((unsigned int) time(NULL)); for(i=0;i<9;i++){ printf("%.2f\n",(float)(rand()%100001)*0.001f); } return 0;}?
?
这样就生成了我要的100以内的随机数,我还需要一些负数,所以就最后还要减去50
?
NSNumber* tempnumber = [NSNumber numberWithDouble:[[NSString stringWithFormat:@"%.2f", (float)(rand()%100001)*0.001f -20] doubleValue]];?