0
在我的Programm中,我想刪除數組中的所有項,其中hd不在temp_unten和temp_oben之間,但for循環變爲-1,並且給我失敗(我用'^'標記了該行) :Java for-loop進入減號?
異常在線程 「AWT-EventQueue的 - 0」 java.lang.ArrayIndexOutOfBoundsException:-1
if (hd) {
int temp_unten = Integer.parseInt(spnHDUnten.getValue() + "");
int temp_oben = Integer.parseInt(spnHDOben.getValue() + "");
switch (cmbHDOben.getSelectedItem() + "") {
case "MB":
break;
case "GB":
temp_oben = temp_oben * 1000;
break;
case "TB":
temp_oben = temp_oben * 1000 * 1000;
break;
}
switch (cmbHDUnten.getSelectedItem() + "") {
case "MB":
break;
case "GB":
temp_unten = temp_unten * 1000;
break;
case "TB":
temp_unten = temp_unten * 1000 * 1000;
break;
}
if (!(temp_oben < temp_unten)) {
for (int i = zutreffendeObjektnummern.size() - 1; i >= 0; i--) {
for (int i2 = GUI.objekte_objekt_ID.size() - 1; i >= 0; i2--) {
^ if (!(GUI.hd.get(i2).replaceAll("[^0-9.,]+", "").equalsIgnoreCase("")) && Integer.parseInt(GUI.objekte_objekt_ID.get(i2).replaceAll("[^0-9.,]+", "")) == Integer.parseInt(zutreffendeObjektnummern.get(i).replaceAll("[^0-9.,]+", ""))) {
if (Integer.parseInt(GUI.hd.get(i2).replaceAll("[^0-9.,]+", "")) < temp_unten || Integer.parseInt(GUI.hd.get(i2).replaceAll("[^0-9.,]+", "")) > temp_oben) {
zutreffendeObjektnummern.remove(i);
}
}
}
}
} else {
JOptionPane.showMessageDialog(this, "Von/Bis muss beim Auswahlen von Spannen beachtet werden!", "Fehlerhafte Eingabe", JOptionPane.INFORMATION_MESSAGE);
}
}
謝謝您的幫助:)
你錯誤'我'爲'i2' – RobAu