Java Double 输出结果保留几位小数 使用printf
程序员文章站
2022-06-01 21:35:06
...
方法一:使用printf
System.out.printf("%4.2f/c/b(布尔值)/d/e/s(字符串)");
默认情况下,浮点值显示小数点后六位
%e要求必须是浮点型的值
要在格式里输出直接量%,必须使用%%
例如:
import java.text.DecimalFormat;
import java.util.Scanner;
public class cicle {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int r = in.nextInt();
double d = r * r * Math.PI;
DecimalFormat df = new DecimalFormat("#0.0000000");
System.out.println(df.format(d));
System.out.printf("%.7f",d);
}
}
方法二: 使用DecimalFormat
BigDecimal类:是为了更加精确的存储小数,精确的表示、计算浮点数的运算;不可变的、任意精度的有符号的十进制数;
DecimalFormat df = new DecimalFormat("#0.0000000");
System.out.println(df.format(d));
//#0.00代表保留两位小数