㈠ java程序中怎么保留一位小数
java中保留1位小数, 通常可以使用字符串格式化的方式, 或者利用BigDecimal 来实现
参考代码
importjava.math.BigDecimal;
publicclassTest{
publicstaticvoidmain(String[]args){
doubled1=3.02;
System.out.println(d1);
//利用字符串格式化的方式实现四舍五入,保留1位小数
Stringstr1=String.format("%.1f",d1);//1代表小数点后面的位数,不足补0.f代表,后面的数据d1是浮点类型
System.out.println(str1);
//利用BigDecimal来实现四舍五入.保留一位小数
doublef1=newBigDecimal(d1).setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue();
//1代表保留1位小数
//BigDecimal.ROUND_HALF_UP代表使用四舍五入的方式
System.out.println(f1);
}
}
㈡ 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 表示浮点型。
㈢ java金额转换的问题,想要保留小数点后两位,这样会下标越界该怎么改
哈?你的程序好复杂,我都没看明白
BigDecimal直接设置小数并设置四舍五入的方式不就好了吗?
㈣ java 保留小数点几位的问题!!!!
2个方法都没错,是你取了一半
=
=|
第一个:
写成num+=df.format(Vp[x][y])+",";
就可以了.
第二个:
float
i=((int)(Vp[x][y]*100))/100f;
意思是把这个double变量乘以100再取整,然后除以100得到的就是小数点后有两位的实数,要用字符串形式请自行转换.如果要保留3位就用1000.
PS:
1.
第一个方法是比较标准的写法.不推荐第二种写法.
2.
DecimalFormat是否进行了四舍五入我不知道,但是(int)可是没有的,它是直接把后面的数字截掉了.
㈤ java 保留小数点后2位
给你说个比较简单的方法吧,不知道你有没用学过c语言,c和c++都有格式化输出函数:printf()。
Java也有同样的格式化输出,针对你的这个问题可以这么写
System.out.printf("%.2f",d);//d是一个double或float类型,保留小数点后两位
这只是printf的某一种用法,建议你去看看它的其他更多的用法。
㈥ java计算结果 小数点后保留两位
System.out.println(Double.parseDouble(new
DecimalFormat("#.##").format(a))+ " " +
Double.parseDouble(new DecimalFormat("#.##").format(b)));
把输出语句换成这个就行了。
㈦ java中保留小数点后几位是怎么设的
有两种情况:
1、只要输出结果的时候可以用以下方法:
double x1 = 0.026;
System.out.println(String.format("%.2f", x1));
结果:0.03
2、使用数据转换(4种方法)
//方案一:
get_double = (double)(Math.round(result_value*100)/100.0)
//方案二:
DecimalFormat df = new DecimalFormat("#.##");
get_double = Double.ParseDouble(df.format(result_value));
//方案三:
get_double = Double.ParseDouble(String.format("%.2f",result_value));
//方案四:
BigDecimal bd = new BigDecimalresult_value();
BigDecimal bd2 = bd.setScale(2,BigDecimal .ROUND_HALF_UP);
get_double = Double.ParseDouble(bd2.ToString());
㈧ java、怎样简便的保留小数点后两位。
有两种情况:
1、只要输出结果的时候可以用以下方法:
double x1 = 0.026;
System.out.println(String.format("%.2f", x1));
结果:0.03
2、使用数据转换(4种方法)
//方案一:
get_double = (double)(Math.round(result_value*100)/100.0)
//方案二:
DecimalFormat df = new DecimalFormat("#.##");
get_double = Double.ParseDouble(df.format(result_value));
//方案三:
get_double = Double.ParseDouble(String.format("%.2f",result_value));
//方案四:
BigDecimal bd = new BigDecimalresult_value();
BigDecimal bd2 = bd.setScale(2,BigDecimal .ROUND_HALF_UP);
get_double = Double.ParseDouble(bd2.ToString());