我在JTable中显示数字时遇到问题。如果我尝试使用DecimalFormat格式化数字3.456007:
Scanner scanner= new Scanner(System.in);//define it once
float math = scanner.nextFloat();//store in a variable
System.out.println(math);
...
JTable中的输出 3,456 而不是 3.456 。 如果我没有格式化数字,结果是正确的点: 3.456007 如何在不丢失点的情况下仅显示3位小数?
答案 0 :(得分:2)
这里要注意的重要一点是“。”格式中的字符不代表点。它表示:对应于区域设置的小数点分隔符。
你可以有一个实际的“。”通过显式设置小数分隔符确实是点的Locale。例如:
NumberFormat df = NumberFormat.getInstance(Locale.ENGLISH);
System.out.println(df.format(12.3456)); //prints 12.346