我有一个小疑问,我无法解决这个问题,那就是我有一个存储双精度值的双精度变量,但我希望它打印 0 而不是 0.0 当它没有数据时,但无论我尝试什么,我都无法让它工作 例如:
double a = 0;
System.out.println(a);
应该给我 0 而不是 0.0
我知道这是一个愚蠢的问题,但谁能指出我正确的方向,提前谢谢你。
使用如下所示的方法:
double a = 0.0;
System.out.println(formatA(a));
static String formatA(double a) {
if (a == 0.0)
return "0";
else
return String.valueOf(a);
}
您可以将变量 'a' 的类型转换为整数。
double a = 0;
System.out.println((int)a);
人,double a = 0;
是十进制类型。 你会做:
更改值的类型
int a = 0
或者,也可以强制转换值。
System.out.println((int) a);
如果不想
看到双精度值的小数部分,可以将其转换为长整型值。请注意,将其转换为"int"值不是一个好主意,因为最大"双精度"值大于最大"整数"值。
double a = 0;
System.out.println((long)a);