美文网首页A知识点iOS基础
NSString 转 float double 精度问题

NSString 转 float double 精度问题

作者: AlexLi_ | 来源:发表于2017-05-11 13:16 被阅读706次

不知道你们有没有遇到 将 字符串 转成 float double 时有没有遇到 精度问题.

例如:

NSString *price = @"19.90";
NSLog(@"%f",[price doubleValue]);

输出结果为:
19.8999999

如果这是在计算金钱的时候,那就头疼了..

所以这里我们就需要用到 NSDecimaNumber 

NSString *doubleString = @"19.90";
NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:doubleString];
NSLog(@"%f",[decNumber doubleValue]);
输出结果为:
19.90

相关文章

  • NSString 转 float double 精度问题

    不知道你们有没有遇到 将 字符串 转成 float double 时有没有遇到 精度问题.

  • java double/float转BigDecimal,精度问

    double/float 转BigDecimal,会有精度问题。所以需要转String类型,然后再转BigDecimal

  • 精度丢失

    开发中处理处理价格金额问题, 后台经常返回float、double类型, 打印或转成NSString都会有精度丢失...

  • 记一道精度转换面试题

    解释:1.向上转换不会丢失精度(float--->double),向下转才会丢失精度(double--->floa...

  • NSString 转换 float 的精度问题

    NSString 转换 float 的精度问题, 换double类型可以解决 今天项目中遇到了一个提现金额必须为2...

  • float和 double精度问题

    因为是做金融类APP的,所以项目中也就不得不接触到了金额这一概念,但是就是这么个常见的场景,一个不留神,就让我摔了...

  • double与float精度问题

    因为计算机是用二进制0和1存储信息的,对于十进制的小数,需要先转成二进制才能存入计算机(整数部分除2取余,小数部分...

  • double,float精度

    对于这个问题,还是得看计算机原理。 我们这个问题,可以用科学计数法来表示,1.222222332412341234...

  • mysql8 数据类型 float double decimal

    float数值类型用于表示单精度浮点数值,而double数值类型用于表示双精度浮点数值,float和double都...

  • C语言学习 - 浮点型数据类型

    在 C语言中,浮点型数据类型可分为:float(单精度)、double(双精度)、long double(长双精度...

网友评论

    本文标题:NSString 转 float double 精度问题

    本文链接:https://www.haomeiwen.com/subject/hpbitxtx.html