关于java格式化数据,保留两位小数不精准的问题
来源:互联网 发布:矩阵的拉普拉斯展开式 编辑:程序博客网 时间:2024/05/16 02:24
首先,网上有传的几种格式化的方法,如下
java保留两位小数问题:
方式一:
四舍五入
double f = 111231.5585;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
保留两位小数
---------------------------------------------------------------
方式二:
java.text.DecimalFormat df =new java.text.DecimalFormat("#.00");
df.format(你要格式化的数字);
例:new java.text.DecimalFormat("#.00").format(3.1415926)
#.00 表示两位小数 #.0000四位小数 以此类推...
方式三:
double d = 3.1415926;
String result = String .format("%.2f");
%.2f %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型
方式四:
NumberFormat ddf1=NumberFormat.getNumberInstance() ;
void setMaximumFractionDigits(int digits)
digits 显示的数字位数
为格式化对象设定小数点后的显示的最多位,显示的最后位是舍入的
float
num=(
float
)(Math.round(totalPrice*
100
)/
100
);
//如果要求精确4位就*10000然后/10000
这样计算的话,自己可以笔算试试,出来的结果跟你想要的结果误差是比较大的
解决处理的方法:
把所有的Float数据,换成Double
- 关于java格式化数据,保留两位小数不精准的问题
- java格式化小数,保留两位小数
- 数据保留两位小数,格式化时间
- 精准的保留double的两位小数
- java jsf保留两位小数问题
- java保留两位小数问题
- java保留两位小数问题:
- java保留两位小数问题
- java保留两位小数问题
- java保留两位小数问题
- java保留两位小数问题
- java保留两位小数问题:
- Java保留两位小数问题
- Java保留两位小数问题
- 千分位格式化 保留两位小数
- JAVA DecimalFormat格式化Double保留两位小数
- JAVA 保留两位小数的方法
- JAVA-保留两位小数的方法
- GreenPlum常用数值计算函数
- Java ServerSocket Socket 网络通讯的那些事
- 从零开始——Windows环境lua编程
- iOS 读取通讯录
- MeasureSpec
- 关于java格式化数据,保留两位小数不精准的问题
- 如何快速启动 Android 模拟器
- 进度选择器
- Oracle连接数查看
- golang 并发 chan
- PHP_SELF、 SCRIPT_NAME、 REQUEST_URI区别
- Power of Three
- C++虚函数的底层实现原理
- Android 自定义View