我正在使用netbeans制作一个GPA计算器,该计算器使用一系列组合框(5个,它们完全相同)。我试图在计算器使用循环运行后将其值重置为第一个值:

javax.swing.JComboBox aoComboBoxes []=new javax.swing.JComboBox [6];

    aoComboBoxes [0]= cmbxACC200;
    aoComboBoxes [1]= cmbxBUSM241;
    aoComboBoxes [2]= cmbxFIN201;
    aoComboBoxes [3]= cmbxIS110;
    aoComboBoxes [4]=cmbxIS201;
    aoComboBoxes[5]=cmbxIS303;

    for (int i=0; i<aoComboBoxes.length; i++)
    {
        aoComboBoxes[0].setSelectedIndex(0);
    }


这可能吗?现在,该代码无法按原样运行,并且我不确定这是由于编写代码的方式错误还是无法执行此类操作。我对这是否可行感到好奇,因为我还想运行一个循环以从每个组合框中获取数据并将其分配给变量:
int iLetterGrade;

for (int i=0; i<aoComboBoxes.length; i++)
{
  iLetterGrade=aoComboBoxes[0].getSelectedIndex();
}

最佳答案

那么,您的1 for循环只会将aoComboBoxes [0]重置6次,因为您已将索引硬编码为0。在检索数据时,您在2nd for循环中犯了同样的错误。

只需将for循环替换为以下内容:

 for (int i=0; i<aoComboBoxes.length; i++)
{
    aoComboBoxes[i].setSelectedIndex(0);
}


第二循环:

 for (int i=0; i<aoComboBoxes.length; i++)
 {
    iLetterGrade=aoComboBoxes[i].getSelectedIndex();
 }

08-25 18:01