1

可能重复:
将双精度数舍入到小数点后 2 位有效数字

我有一个问题,我想绘制一个字符串,其中包含一个双精度或浮点值,最多两个十进制值。使用起来很容易,System.out.Printf()但如何使用drawString

就像下面的语句计算要在 JPanel 上解开的数字。但实际显示的是一个字符串,其值最多为小数点后 14 位。我需要将显示限制为小数点后 2 位

double size= ((int)((((float) maxSize / (float) (40 * 1.0))*100.0))/100.0);

g.drawString("" + size, 135, 100 + range * i);
4

3 回答 3

4

您必须使用java.text.DecimalFormat类。

String value= new DecimalFormat("#.##").format(number);
于 2012-07-27T07:26:06.360 回答
2
 double inputNumber = 1.234567;
 DecimalFormat df = new DecimalFormat("#.##");
 String printValue = df.format(inputNumber));
 g.drawString(printValue);
于 2012-07-27T07:29:04.133 回答
1

用这个...java.text.DecimalForamt

 DecimalFormat df = new DecimalFormat("#.##");
    decimal d = new decimal("10.2344");
    df.format(d);
于 2012-07-27T07:31:21.090 回答