| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > format - проблема с параметрами |
| Автор: talker 16.5.2010, 19:33 | ||||
Возникла непонятная ошибка с выполнением примера из одного учебника по Java
Запускаю в Eclipse, получаю ошибку The method format(String, Object[]) in the type Formatter is not applicable for the arguments (String, double) Удивился, попробовал привести double к Object[]
Всё равно ошибка Type mismatch: cannot convert from double to Object Попробовал String.format() и System.out.format() - та же проблема. Гугль такую ошибку не знает, да и пример встречается в Гугле очень часто. Подскажите, я как-то неправильно настроил Eclipse или чего-то не понимаю? |
| Автор: jk1 16.5.2010, 19:46 | ||
| Сначала проверьте используемую версию JDK, выглядит так, как будто она меньше 1.5 и не работает autoboxing. В качестве выхода в данной конкретной ситуации попробуйте написать так:
|
| Автор: jk1 16.5.2010, 21:12 | ||||
Из чистого интереса скачал Eclipse в Java SE комплектации, ваш код компилируется и запускается прямо из коробки, без каких бы то ни было настроек.
Нет такой галочки и быть не может. Autoboxing - автоматическая обертка компилятором примитивных типов в объектные оболочки. То есть это feature языка и к IDE отношения не имеет.
Описывайте симптомы, сообщения компилятора, исключения, возникающие у вас при проверке моего куска кода. |
| Автор: Nofate 17.5.2010, 10:17 | ||
| Странно, что он просит на вход массив. Попробуйте такой изощренный вариант: =)
Хотя врядли поможет... Еще одна мысль: а если попробовать скомпилировать не эклипсом а непосредственно javac-ом? |
| Автор: jk1 17.5.2010, 10:45 | ||
Ничего странного в этом нет: в сигнатуре метода прописан varargs для того, чтобы можно было передавать переменное число аргументов. При передаче параметров происходит неявное преобразование их в массив Object[] c autoboxing'ом, если возникает необходимость. |
| Автор: Nofate 17.5.2010, 13:17 |
| Вот не зря я боялся, что глупость скажу.. ) 2 jk1: спасибо, что просветили ) |