在我们编程的过程中的时候,也是我(一个java新学员)遇到过的问题,在输出小数的时候觉得小数点后面的位数太长了,譬如10.399999999999.....这样的数字,我只想取小数点后面两位。这个时候就需要通过DecimalFormat这个类来控制这个情况。
DecimalFormat df=new DecimalFormat("0.000");
在这里我定义了一个df来调用这个类。
例子:
public class Demo1 {
public static void main(String[] args) {
DecimalFormat df=new DecimalFormat("0.000");
Scanner input=new Scanner(System.in);
double num=158.997999;
System.out.println(df.format(num));
}
}
括号中的红色字体就是控制小数点后面的位数,我在这里设置了取小数点后的三位数(0.000小数点后三个0,你可以更改这个来达到你想获取的长度)。并且我设置了一个double类型的num值为158.997999。
蓝色字体则数调用这个类的方法format(),参数为我们要控制的数字num,并且输出它。
值得一提是这个方法采取的是四舍五入,也就是我们要舍去的小数点后第4位如果大于5则会先进1再舍去,譬如上面的例子的输出结果为
大概就这些了- -,如有问题
请自行查阅其他资料 恕在下爱莫能助OAO