当我点击 ListModel 时抛出错误

Error thrown when I click out of ListModel

当我点击一个按钮(例如 mainBtn)然后 select mealList 中的一个字符串,然后点击另一个按钮(例如 starterBtn)时,控制台会抛出一个错误。如果有人可以在正确的方向上轻推我并告诉我为什么代码会抛出一条错误消息,我们将不胜感激。

public void updateLabel(menulist model) {


int selectionNumber = mealList.getSelectedIndex();
if (selectionNumber == -1){
} else {
    Food menulist = (Food) mealList.getSelectedValue();
Food itemFood = (Food) ((menulist) model).getElementAt(selectionNumber);

错误信息

Exception in thread "AWT-EventQueue-0"     java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.Vector.elementData(Vector.java:734)
at java.util.Vector.elementAt(Vector.java:477)
at javax.swing.DefaultListModel.getElementAt(DefaultListModel.java:89)
at MenuPage.updateLabel(MenuPage.java:317)

你调用的是一个无效的索引,当你选择该项目时,你一定不会建立你选择的索引值,因此,按钮会因为按钮的释放而注册为-1,你想具有包含在 ActionEvent

中的选项的索引值