2013-11-28 3 views
2

У меня есть небольшая проблема, из-за которой я не могу работать. Im пытается заполнить массив вектором в цикле for (так как размер вектора будет меняться со временем). Я создаю мой вектор, как это в классе под названием StudentFactory:NullPointerException при заполнении двумерного массива вектором

private Vector<StudentImpl> theListOfStudents = new Vector<StudentImpl>(); 

и передать его в класс под названием стол как это:

public Vector<StudentImpl> table() { 
     return theListOfStudents; 
    } 

, а затем в таблице класса Я пытаюсь заполнить 2D-массив следующим образом:

 theFactory = StudentFactory.getInstance(); 

     // Create columns names 
     String columnNames[] = { "Name", "Address"}; 
     Vector<StudentImpl> temp; 
     temp = theFactory.table(); 
     // Create some data 
     String [][] data; 
     for(int i = 0; i < temp.size(); i++) 
     { 
       data[i][0] = temp.get(i).getTheName(); 
       data[i][1] = temp.get(i).getTheAddress(); 
     } 


     // Create a new table instance 
     table = new JTable(data, columnNames); 

Он продолжает указывать мне, чтобы установить String [][] data; в значение null, но когда я получу нулевой ссылочный указатель. Любая помощь здесь была бы отличной благодарностью

ответ

1

Он продолжает сообщать мне установить данные String [] []; до нулевого ...

Это не значит, что это, а данные еще не были инициализированы.

Набор данных к размерам он нуждается, который на основе размера вашего вектора:

String[][] data = new String[temp.size()][2]; 
+0

что работал спасибо вам очень –

+0

@ Dennington медведицы: вы радушны. –

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