私のjTableでは、最初の列に数値が含まれています。「行の追加」を選択すると、次の行で次のコードが実行されます。
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
int x = jTable1.getRowCount();
String cellValue = "";
if(x > 0){
java.lang.Object cell = jTable1.getValueAt(x,0);
int a = Integer.parseInt(cell.toString());
int b = a + 1;
cellValue = Integer.toString(b);
}
java.lang.Object[] os = new Object[]{cellValue,"","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",};
model.addRow(os);
jTable1.setModel(model);
jTable1.setAutoCreateColumnsFromModel(true);
このコードのポイントは新しい行を追加することですが、新しい行の最初の値が入力されます。これがキー番号です。残念ながら、キー番号は行数とは関係ありません。
「行を追加」する jButton が押されると、この Exception がスローされます。
スレッド「AWT-EventQueue-0」での例外 java.lang.ArrayIndexOutOfBoundsException: 837 >= 837
837 はボタンを押したときに jTable が持っていた行の数であるため、数字は意味があります。
事前に助けてくれてありがとう。