是否可以更改整个代码的十进制格式,包括开关和循环?

时间:2019-01-28 12:46:05

标签: java format decimal

我有一个试图运行的大量代码。我需要添加的内容之一是更改其小数点的选项。我创建了一个带有switch语句的菜单,希望用户在1到5之间决定他们不会保留多少个小数点。如果他们选择3,我想将整个代码更改为3个小数位。代码有点混乱,我似乎无法正确选择小数点。

粗略布局:

菜单 选项1 选项2 选项3 选项4

  1. 1个小数点
  2. 2个小数点

等等在决定了多少个小数之后,我希望它本质上影响整个代码。有可能吗?

//删除了代码

2 个答案:

答案 0 :(得分:0)

尝试使用Java方法: String.format();

double number = 12.43544545;
int decimalPoint = 3;

System.out.println(String.format("%." + decimalPoint + "f", number));

答案 1 :(得分:0)

创建一个包含DecimalFormat的变量

DecimalFormat df = new DecimalFormat();
其中选择小数点后的位数,并读入

在菜单选项4 dec

df.setMaximumFractionDigits(dec);
df.setMinimumFractionDigits(dec);

上面的装置,其数字将始终被印有dec小数点后的位数

然后每当您要打印两次使用格式化程序时

 System.out.println("The result is " + df.format(someValue));

一个例子

DecimalFormat df = new DecimalFormat();
for (int i = 0; i < 4; i++) {
    df.setMaximumFractionDigits(i);
    df.setMinimumFractionDigits(i);
    System.out.println("example " + df.format(24) + " " + df.format(12.3456));
}

输出

  

实施例24 12
  例如24.0 12.3
  例如24.00 12.35
  例如24.000 12.346