Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
java 除法保持精度_最大允许误差和精度的关系,希望能够帮助你!!!。
int a=4;
int b=3;
float c = (float) a/b;
System.out.print(c);//输出:1
如果要的到精确的结果,要用下面的方法
int a=4;
int b=3;
float c = (float) a/(float) b;
System.out.print(c);//输出:1.
import java.text.DecimalFormat;
public class toDouble {
public static void main(String[] args){
//增加三位小数0
DecimalFormat df = new DecimalFormat("0.000");
double d = 123;
System.out.println(df.format(d));
//保留4位小数
double d1 = 123.0;
String d2 = String.format("%.4f", d1);
System.out.println(d2);
int d3=5;
//float d4=d3/100;
String d4 = String.format("%.3f", (float)d3/100.00);
System.out.println(d4);
}
}
输出:
123.000
123.0123
0.050
Java除法保留3位小数的几种方法
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;
public class format {
double f = 0.5585;
double f1 = 11.5585;
public void m1() {
//数字
BigDecimal bg = new BigDecimal(f);
double f1 = bg.setScale(3, BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println(f1);
}
/**
* DecimalFormat转换最简便
*/
public void m2() {
//字符串
DecimalFormat df = new DecimalFormat("0.000");//对于大于1的用"#.000",小于1的要用"0.000"
String t=df.format(f);
System.out.println(t);
DecimalFormat df1 = new DecimalFormat("#.000");
System.out.println(df1.format(f1));
}
/**
* String.format打印最简便
*/
public void m3() {
//字符串
String t =String.format("%.3f", f);
System.out.println(t);
}
public void m4() {
//字符串
NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMaximumFractionDigits(3);
String t =nf.format(f);
System.out.println(t);
}
public static void main(String[] args) {
format f = new format();
f.m1();
f.m2();
f.m3();
f.m4();
}
}
结果:
0.558
0.558
11.558
0.559
0.558
Math.ceilMath.roundMath.floor
floor 向下取整 ceil 向上取整 round 则是4舍5入的计算,round方法,它表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,所以,Math.round(11.5)的结果为12,Math.round(-11.5)的结果为-11。 Math.floor(1.4)=1.0 Math.round(1.4)=1 Math.ceil(1.4)=2.0 Math.floor(1.5)=1.0 Math.round(1.5)=2 Math.ceil(1.5)=2.0 Math.floor(1.6)=1.0 Math.round(1.6)=2 Math.ceil(1.6)=2.0 Math.floor(-1.4)=-2.0 Math.round(-1.4)=-1 Math.ceil(-1.4)=-1.0 Math.floor(-1.5)=-2.0 Math.round(-1.5)=-1 Math.ceil(-1.5)=-1.0 Math.floor(-1.6)=-2.0 Math.round(-1.6)=-2 Math.ceil(-1.6)=-1.0
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。