我有一个combobox.it有类别name.so我需要将字符串传递给类别。 类别category =(Category)cmbCategory.getSelectedItem();此行得到错误提示着投串类别类型..java.lang.ClassCastException:java.lang.String不能转换为类别类型
private void btnSaveActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
double amount = Double.parseDouble(txtAmount.getText());
Expense expense = new Expense();
expense.setReason(txtReason.getText());
expense.setAmount(amount);
DateFormat format = new SimpleDateFormat("MMMM d, yyyy");
Category category = (Category)cmbCategory.getSelectedItem();
String startDate = ((JTextField)txtDate.getDateEditor().getUiComponent()).getText();
try {
Date date = format.parse(startDate);
expense.setDate(date);
} catch (ParseException ex) {
Logger.getLogger(ExpenseView.class.getName()).log(Level.SEVERE, null, ex);
}
expense.setCategory(category);
ExpenseController.saveExpense(expense);
}
是'cmbCategory.getSelectedItem()的类型;'字符串? –
yes.i将它作为字符串传递 – Dise
那么这就是你的问题。你正在试图告诉编译器'getSelectedItem()'会给你一个'Category'的Category或Category,'String'不是。 – Orin