2016-05-03 80 views
1

我似乎無法在這個方法返回變量data返回對象數組方法

public Object[] populateTable(ArrayList<Outlet> outletList, String selection){ 
    Object[] data; 
    for(int i = 0; i<outletList.size(); i++){ 
     if(outletList.get(i).getCity().equalsIgnoreCase(selection)){ 
      if(outletList.get(i).getStatus().equals("ACTIVE")){ 

       String bar = outletList.get(i).getBarangay(); 
       String code = Integer.toString(outletList.get(i).getCode()); 
       String name = outletList.get(i).getName(); 

       data = {bar, code, name};      
      } 
     }    
    } 
    return data; 
} 

NetBeans是說表達的非法啓動。有沒有辦法執行這種方法,其中數據(來自mysql數據庫傳輸到接口中的ArrayList<object>)傳遞給Object[]?尋找一種方法來填充來自mysql數據庫的JTable行數據。

回答

3

錯誤就出現在這裏:

data = {bar, code, name}; 

相反,構建的Object一個新的數組來保存的String實例:

data = new Object[]{bar, code, name}; 

然後你就可以在你的DefaultTableModel調用addRow(data)。在TableAddTest#addRow()中顯示了一個完整的示例here

image

+1

參見[*陣列:創建,初始化和訪問數組*](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html)。 – trashgod