jComboBox 获取选定项错误

jComboBox getSelected Item error

大家好,我在文本框中的 jcombobox 中显示所选项目时遇到了一些问题,这是我的代码:

double Cubao = 0;
double Zambales = 0;
final int Tickets = 50;
jLabel1.setText(String.valueOf(Tickets));
final double discount = .8;
String selecteditem = jComboBox2.getSelectedItem().toString();
String selectitem = jComboBox1.getSelectedItem().toString();
int Passengers = Integer.parseInt(jTextField2.getText());
if (jComboBox2.getSelectedItem().equals("Deluxe AC")) {
if (jComboBox1.getSelectedItem().equals("Cubao_QuezonCity"))    
   Cubao = 780; 
}
if (jComboBox2.getSelectedItem().equals("Ordinary")) {
if (jComboBox1.getSelectedItem().equals("Cubao_QuezonCity"))    
   Cubao = 500; }
jTextField4.setText(String.valueOf(Cubao * Passengers));

if (jComboBox2.getSelectedItem().equals("Deluxe AC")) 
if (jComboBox1.getSelectedItem().equals("Iba_Zambales")) {
   Zambales = 530; 
if (jComboBox2.getSelectedItem().equals("Ordinary"))
if (jComboBox2.getSelectedItem().equals("Iba_Zambales"))
   Zambales = 300;
 {   

jTextField4.setText(String.valueOf(Zambales * Passengers));   
}
{


jTextField4.setEditable(false);
jTextField1.setEditable(false);

现在当我将 Bus Type 设置为 Deluxe AC 时,它会显示: http://tinypic.com/r/2s9zwcj/8 但是当我将 Bus Type 设置为 Ordinary nothing 时,它会显示: http://tinypic.com/r/29mu0so/8

我的代码似乎有什么问题?

您多次检查相同的字段,这意味着您有很多 netsted if 块,这使得代码难以阅读。我建议这样:

if (jComboBox1.getSelectedItem().equals("Cubao_QuezonCity")) {
    if (jComboBox2.getSelectedItem().equals("Deluxe AC")) {
        Cubao = 780;
    } else {
        Cubao = 500;
    }
    jTextField4.setText(String.valueOf(Cubao * Passengers));
    jTextField4.setEditable(false);
    jTextField1.setEditable(false);
}
if (jComboBox1.getSelectedItem().equals("Iba_Zambales")) {
    if (jComboBox2.getSelectedItem().equals("Deluxe AC")) {
        Zambales = 530;
    } else {
        Zambales = 300;
    }
    jTextField4.setText(String.valueOf(Zambales * Passengers));
    jTextField4.setEditable(false);
    jTextField1.setEditable(false);
}