关于配置输入的十进制掩码的问题



我有一个情况,我需要动态地掩盖我的小数点到2位。用户只能输入整数。例子:

  1. 如果用户输入5,输出将是。05
  2. 如果用户输入57,输出将是。57
  3. 如果用户输入157,输出为1.57

我怎样才能做到这一点?我不能找到一个屏蔽格式,将允许这一点,所以我需要写我自己的?如果有,有什么建议吗?

到目前为止我写的是:

import java.text.DecimalFormat;
public class MyClass {
public static void main(String args[]) {
DecimalFormat myFormat = new DecimalFormat(".##");
System.out.println(myFormat.format(5)); // Expecting .05
System.out.println(myFormat.format(57)); // Expecting .57
System.out.println(myFormat.format(157)); // Expecting 1.57
}
}

DecimalFormat用于格式化已经具有正确值的数字,而不是用于不寻常的输入方法。

您可能必须在输入的字符串和要输出的数字之间执行手动转换。然后,您可以使用该类来执行正确的输出

要跳过逗号前的前导零,需要指定以下格式:new DecimalFormat("#.00")

最新更新