在java中相应地打印双值
我在Java中有两个值,如下所示:在java中相应地打印双值,java,double,Java,Double,我在Java中有两个值,如下所示: 2.3422 45.3267 25.0 我想打印的是: 2.34 45.32 25 所以我用了下面的方法 DecimalFormat form=new DecimalFormat("#0.00"); form.format(value); 但我面临的问题是,对于25.0,它正在打印25.0,但我只想打印25,我该怎么办 请注意,将双精度值强制转换为整数适用于25.0,但对于2.3422之类的值则会失败。请尝试使用以下格式:“#0.#”将代码修复为: De
2.3422
45.3267
25.0
我想打印的是:
2.34
45.32
25
所以我用了下面的方法
DecimalFormat form=new DecimalFormat("#0.00");
form.format(value);
但我面临的问题是,对于25.0,它正在打印25.0,但我只想打印25,我该怎么办
请注意,将双精度值强制转换为整数适用于25.0,但对于2.3422之类的值则会失败。请尝试使用以下格式:
“#0.#”
将代码修复为:
DecimalFormat form = new DecimalFormat("#0.##");
或者,您可以使用:
double value = 123.456789;
String.format( "%.2f", value );
用这个
DecimalFormat form = new DecimalFormat("0.##");
System.out.println(form.format(2.3422));
System.out.println(form.format(45.3267));
System.out.println(form.format(25.0));
输出:2.34
45.33
25
45.3267
带两位小数点的是45.33
,而不是45.32
@Andreas,这取决于所需的舍入方法。2f是否产生两个尾随零?