社区
Java SE
帖子详情
关于float,double类型的数据四舍五入的讨论!
kenvin
2003-08-05 11:25:51
我想做到保留一定的有限小数位数。
尝试用Math.Round()方法先扩大,后取整,然后在缩小。
或者用 类似于这种形式:
((int)(obj*1000)/10)/100.0f 这里做保留3位小数 obj为float
可惜容易出现溢出现象了。
我还看到另外一种方法,就是先转换为String,然后处理,然后在转换回来
不过这个会很麻烦!
不知道大家都有什么想法,哪位大侠有更好的意见,希望可以跟贴呀!
...全文
135
4
打赏
收藏
关于float,double类型的数据四舍五入的讨论!
我想做到保留一定的有限小数位数。 尝试用Math.Round()方法先扩大,后取整,然后在缩小。 或者用 类似于这种形式: ((int)(obj*1000)/10)/100.0f 这里做保留3位小数 obj为float 可惜容易出现溢出现象了。 我还看到另外一种方法,就是先转换为String,然后处理,然后在转换回来 不过这个会很麻烦! 不知道大家都有什么想法,哪位大侠有更好的意见,希望可以跟贴呀!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kenvin
2003-08-05
打赏
举报
回复
除了这种方法以外,还有没有别的更好的,这个我也做过了。
bluesmile979
2003-08-05
打赏
举报
回复
先把整数部分取出来,然后就可以只对小数部分扩大,取整,一般精度要求是不会溢出的
最后把整数部分和小数部分合起来就可以了。
直接扩大的话确实是很容易溢出的。
bluesmile979
2003-08-05
打赏
举报
回复
先把整数部分取出来,然后就可以只对小数部分扩大,取整,一般精度要求是不会溢出的
最后把整数部分和小数部分合起来就可以了。
直接扩大的话确实是很容易溢出的。
Kidwish
2003-08-05
打赏
举报
回复
String strObj1 = new DecimalFormat("#0.00").format(double d); //保留2位小数
float
,
double类型
用BigDecimal.ROUND_HALF_UP
四舍五入
失败简析
float
,
double类型
用BigDecimal.ROUND_HALF_UP
四舍五入
失败简析
java中int double
float
等八种基本
数据
类型
首先我们先了解一下基本
数据
类型 基本
数据
类型有八种 bit:一个字节的
数据
类型(8位),范围是-128到127。 short:两个字节,占16位。范围是-(2的15次方)到(2的15)-1一般不用这种
数据
类型。 int:这是我们最常见也是...
Java浮点数
float
和double精确计算的精度误差问题总结
案例:会员积分字段采用
float
类型,导致计算会员积分时,7位整数的
数据
计算结果出现误差。 原因:超出
float
精度范围,无法精确计算。
float
和double的精度是由尾数的位数来决定的。浮点数在内存中是按科学计数法来...
float
和double的比较方式
在计算机内存中,使用IEEE 754标准格式存储
float
和double
数据
。 实际的存储和转换如何工作,超出了本文
讨论
的范围。现在,只要理解在计算和转换过程中可以在这些数字中引入较小的舍入误差。 这就是为什么仅仅依靠...
short类型与int类型转换,
float
类型与
double类型
转换
与
float
f = 3.4 中double
float
转为
float
大转小报错,展开深入研究。 2.基本1.Java类型转换 Java类型转换分为自动转换和强制转换两种。 基本类型间的自动类型转换需要满足以下条件: (1).转换双
Java SE
62,615
社区成员
307,307
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章