iOS中的精度问题

在iOS中,经常会遇到精度失真的情况,下面总结一些常用的防止转换失真的方法。

 1. double转number精度失真

  double money = 89.99;

    NSNumber *moneyNum = [NSNumber numberWithDouble:money];

    NSLog(@"%@",moneyNum); //此时输出89.9899999999999;

  //使用NSDecimalNumber

    moneyNum = [NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%f",money]];

    NSLog(@"%@",moneyNum);  //此时输出89.99

2.

posted @ 2016-09-06 11:59  凡晓晓  阅读(1668)  评论(0编辑  收藏  举报