我目前创建了一个基本的 Java 应用程序,它允许将提供的数字解析为格式化字符串。
我现在面临的问题是,DecimalFormat 以错误的格式格式化提供的值。
示例:
private final DecimalFormat format = new DecimalFormat();
public static void main(String[] args){
int number;
try{
number = Integer.parseInt(args[0]);
}catch(NumberFormatException ex){
System.out.println("The provided value was invalid!");
System.exit(0);
return;
}
format.applyPattern("#,###,###.##");
return format.format(number);
System.exit(0);
}
我在这里面临的问题是,例如,如果我提供数字 123456789
作为 jar 命令中的第一个参数,它会返回 123'456'789
code> 而不是 123,456,789
所需的结果。
什么可能导致此问题?
最佳答案
使用java.text.DecimalFormat
导入,以及以下代码:
private static final DecimalFormat format = new DecimalFormat();
public static void main(String[] args) {
int number = 1456781;
format.applyPattern("#,###,###.##");
System.out.println("The formatted version is -> " + format.format(number));
}
我得到的输出是
The formatted version is -> 1,456,781
Process finished with exit code 0
那么它的格式似乎正确?
关于java - DecimalFormat 解析数字错误。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61695842/