2013-12-12 2 views
-2

Im в настоящее время подсчитывает и захватывает все имена столбцов в таблице базы данных, и теперь им удается захватить каждое значение в этих столбцах с помощью values.add (rs.getString (ar.get (i))); Хотя я получаю индекс из связанной ошибки, и я не знаю, как его решить? Любая помощь приветствуется!Индекс вне связанной ошибки

for (i = 1; i < columnCount + 1; i++) { 
    ColumnNames = rsmd.getColumnName(i); 
    ar.add(ColumnNames); 
    System.out.println(ar); 
} 
model.setColumnCount(columnCount); 

while (rs.next()) { 
    // values.add(rs.getString(ar.indexOf(i))); 
    values.add(rs.getString(ar.get(i))); 
    System.out.println(values); 

    String value1 = ""; 
    String value2 = ""; 
    String value3 = ""; 
    String value4 = ""; 

    value1 = rs.getString(1); 
    value2 = rs.getString(2); 
    value3 = rs.getString(3); 
    value4 = rs.getString(4); 

    model.addRow(new Object[] {value1, value2, value3, value4}); 

} 
+0

не может быть, что вы позволяете другим людям выполнять вашу отладку ... –

ответ

0

Списки обычно начинаются с 0 (а не 1), так что вы всегда будете один впереди (потому что вы начинаете в 1)

если вы меняете цикл для:

for (i = 0; i < columnCount + 1; i++) 

это должно сработать :)

+0

Это не работает. i должен быть установлен в 1 или я получаю исключение за пределы [1,4] – Looptech

0

Указатель без привязки означает, что вы обращаетесь к значению индекса массива, которого нет, например, существует int array [] = int [10]; Если я получаю доступ к массиву [9], это будет нормально, но если я получу доступ к массиву [10], он даст эту ошибку. Итак, теперь проверьте свою программу и отлаживайте ее. Здесь я не знаю, что такое columnCount, и также я не могу отладить его здесь

Смежные вопросы