【Java】 float保留两位小数

前言:float是浮点数,有时需要做精确的位数处理

正文:

方法1

float f = (float) 34.232323;
BigDecimal b = new BigDecimal(f);
float f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue(); //ROUND_HALF_UP表明四舍五入,ROUND_HALF_DOWN表明五舍六入,2:保留两位小数 

方法2

float f = 34.232323;
DecimalFormat fmt = new DecimalFormat("##0.00");
String s = fmt.format(f);
float f1 = Float.parseFloat(s);

参考博客:

Java float保留两位小数_ufeng_新浪博客
http://blog.sina.com.cn/s/blog_77a45ee10101qbuy.html

原文地址:https://www.cnblogs.com/huashengweilong/p/11332206.html

时间: 2024-10-10 09:35:57

【Java】 float保留两位小数的相关文章

Java float保留两位小数或多位小数

转自:Java float保留两位小数或多位小数 方法1:用Math.round计算,这里返回的数字格式的. float price=89.89; int itemNum=3; float totalPrice=price*itemNum; float num=(float)(Math.round(totalPrice*100)/100);//如果要求精确4位就*10000然后/10000 方法2:用DecimalFormat 返回的是String格式的.该类对十进制进行全面的封装.像%号,千分

[Java基础] Java float保留两位小数或多位小数

方法1:用Math.round计算,这里返回的数字格式的. float price=89.89; int itemNum=3; float totalPrice=price*itemNum; float num=(float)(Math.round(totalPrice*100)/100);//如果要求精确4位就*10000然后/10000 方法2:用DecimalFormat 返回的是String格式的.该类对十进制进行全面的封装.像%号,千分位,小数精度.科学计算. float price=

怎么使float保留两位小数或多位小数*如何将整数 int 转换成字串 String

5.怎么使float保留两位小数或多位小数* 两种方法: import java.math.*; -- 方法1: float f = 34.232323; BigDecimal b = new BigDecimal(f); float f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue(); // b.setScale(2, BigDecimal.ROUND_HALF_UP) 表明四舍五入,保留两位小数 方法2: float scale

java 四舍五入 保留两位小数

1. 格式化字符串 1 java.text.DecimalFormat df = new java.text.DecimalFormat("#0.00"); 2 float val=Float.valueOf(df.format(6.6666666666)); 2.BigDecimal.setScale()方法 格式化小数点 1 BigDecimal bd=new BigDecimal(6.666666666666); 2 double val=bd.setScale(2,BigDec

float 保留两位小数

比方说3.1415926,我现在想传给后台的是3.14,类型是必须是float类型,该怎么样做?还有即便通过运算得到了3.14,然后我要是按float传过去,是不是本质上传的还是3.1400000? float 保留两位小数 >> ios 这个答案描述的挺清楚的:http://www.goodpm.net/postreply/ios/1010000008952392/float保留两位小数.html

java double 保留两位小数

java保留两位小数问题: 方式一: 四舍五入  double   f   =   111231.5585;  BigDecimal   b   =   new   BigDecimal(f);  double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  保留两位小数  ---------------------------------------------------------------   方

java四舍五入(保留两位小数)

方式一:最简单的方法: float a = 123.4567f; // 这里的100就是2位小数点,如果要其它位,如4位,这里两个100改成10000 float b = (float)(Math.round(a*100))/100; 方式二: double f = 111231.5585; BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); 方式

java数字保留两位小数四舍五入

import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public class format { double f = 111231.5585; public void m1() { BigDecimal bg = new BigDecimal(f); double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubl

完成率,保留两位小数,double

JAVA实现保留两位小数 double fk = fkyfk==0?0:(fkyfk - fkwfk) / fkyfk; double jj = jjyfk==0?0:(jjyfk - jjwfk) / jjyfk; BigDecimal bfk = new BigDecimal(fk); BigDecimal bjj = new BigDecimal(jj); int fk1 = bfk.setScale(0, BigDecimal.ROUND_HALF_UP).intValue(); int