2013-11-28 65 views
2

時,我有一點,我似乎無法使工作的問題。我試圖用for循環中的矢量填充數組(因爲矢量的大小會隨着時間而改變)。 創建我的向量像這樣在一個名爲StudentFactory類:NullPointerException異常填充2維數組與向量

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;爲空,但是當我做我得到空引用指針。這裏的任何幫助將非常感謝

回答

1

它不斷告訴我設置String [] []數據;爲空...

這不是真的告訴你,而是數據尚未初始化。

集數據,它需要的尺寸這是基於你的向量的大小:

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

奏效非常感謝你 –

+0

@ Dennington熊:不客氣。 –