Не удается вывести отформатированный двойной в Java - PullRequest
4 голосов
/ 31 марта 2010

Вот что я делаю:

double x = 7.0;  
System.out.printf("%.2f", x);

Eclipse дает мне эту ошибку "Метод printf (String, Object []) в типе PrintStream не применим для аргументов (String, double)"

Ответы [ 2 ]

3 голосов
/ 31 марта 2010

Вы используете версию Java старше 1.5? Или, может быть, более старая настройка соответствия компилятора в Eclipse? (например, 1.4) На самом деле, я вполне уверен, что причина - я просто переключил свой параметр соответствия на 1.4, и я получаю ту же ошибку, что и вы.

Проверьте настройки соответствия компилятора вашего проекта:

  • Выберите проект
  • Щелкните правой кнопкой мыши и выберите Свойства
  • перейти к «Java Compiler»
  • измените соответствие компилятора и убедитесь, что вы используете JRE этой версии или выше

Это будет работать, если вы используете Java 1.5 или выше, так как метод printf был добавлен в 1.5.

2 голосов
/ 31 марта 2010

Я запустил следующее, и у меня, похоже, не было этой проблемы. Вы получаете сообщение об ошибке проверки кода Eclipse или компилятора Java?

public class TestDouble {
  public static void main(String[] args) {
     double x = 7.0;
     System.out.printf("%.2f", x);
  }
}

Это также сработает и может остановить Eclipse от жалоб:

public class TestDouble {
  public static void main(String[] args) {
     double x = 7.0;
     System.out.printf("%.2f", new Double(x));
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...