格式化双精度到2位小数 - 编译错误

时间:2015-03-20 18:45:19

标签: java double decimalformat

我正在尝试将double格式化为我正在编写的程序中的2位小数。

我目前有

import java.text.DecimalFormat;
public class testd {
    double d = 1.234567;
    DecimalFormat df = new DecimalFormat("#.##"); 
    System.out.println(df.format(d));​
}

有人能告诉我它出错了吗?

这一行给了我错误:

System.out.println(df.format(d));​

4 个答案:

答案 0 :(得分:1)

您需要将System.out.println放入方法或块中进行编译。要运行,您需要main方法。

public class Test { // class name should start with capital

 public static void main(String[] arg){
  double d = 1.234567;
  DecimalFormat df = new DecimalFormat("#.##"); 
  System.out.println(df.format(d));​
 }
}

答案 1 :(得分:1)

你的代码是对的,你的问题是你不在方法中。我试图将你的代码放在类上下文中。

放入方法并开始工作。

public static void main(String[] args) {
        double d = 1.234567;
        DecimalFormat df = new DecimalFormat("#.##"); 
        System.out.println(df.format(d));
    }

答案 2 :(得分:0)

您需要主要方法:

public static void main(String[] args) {
    double d = 1.234567;
    DecimalFormat df = new DecimalFormat("#.##");
    System.out.println(df.format(d));
}

答案 3 :(得分:0)

由于一些非常奇怪的原因,我在这一行收到illegal character: '\u200b'通知:

System.out.println(df.format(d));​

我在Netbeans中复制并粘贴您的代码后,但在自己输入相同的行后,错误不会出现并且工作正常。

System.out.println(df.format(d));

所以我的建议是重新输入该行,而不会从网站上复制/粘贴。