Как установить целое число в double? Предположим, у меня есть comboBox с именем day, и у него есть 1,2, 3 элемента. Я хочу установить его как две десятичные точки. Если пользователь выбирает 1, он станет 1,00. Как я могу это сделать?Невозможно форматировать данный объект как номер ComboBox
public void actionPerformed(ActionEvent e){
String a=(String)comboBox.getSelectedItem();
//Integer b=(comboBox_1.getSelectedIndex()+1);
int day=(Integer)comboBox_2.getSelectedItem();
double bo;
DecimalFormat df = new DecimalFormat("#.##");
bo= Double.valueOf(df.format(day));
Ошибка я получаю
java.lang.IllegalArgumentException: Cannot format given Object as a Number
at java.text.DecimalFormat.format(DecimalFormat.java:507)
at java.text.Format.format(Format.java:157)
at gui.User.<init>(User.java:105)
at gui.User$1.run(User.java:49)
Там не хватает кода, чтобы воспроизвести вашу проблему. 'DecimalFormat.format (long)' (который вы вызываете в фрагменте кода) должен работать для всех значений int. Вы уверены, что исключение из этой строки? – Codebender
Используйте 'DecimalFormat df = new DecimalFormat (" #. 00 ");' и затем 'df.format (day)', Нет необходимости в двойном преобразовании – Vaulstein
int i = 3; double d = (double) i; –