2013-08-19 68 views
2
  FedespatchVO fedespatch = new FedespatchVO(); 
      List<FedespatchVO> listFedespatch = null; 

      while (rs.next()) { 
       System.out.println("I have something in me"); 
       fedespatch.setSerialNumber(rs.getString(1)); 
       fedespatch.setMachine(rs.getString(2)); 
       fedespatch.setHours(rs.getString(3)); 
       fedespatch.setTrigger(rs.getString(4)); 
       fedespatch.setNoticeTime(rs.getString(5)); 
       listFedespatch.add(fedespatch); 
      } 

listFedespatch.add(fedespatch);空指針異常

正在引發空指針異常。我需要返回FedespatchVO類的列表,這是什麼,但getter setter屬性如serialNumber,Machine,NoticeTime等

我的方法是否錯誤?請幫助

回答

2

因爲你忘了實例化List

​​

listFedespatchnull參考,因此listFedespatch.add()將拋出NullPointerException

嘗試實例吧:

List<FedespatchVO> listFedespatch = new ArrayList<FedespatchVO>(); 

我在這裏使用了ArrayList,您可以使用List任何其他實現。

+0

謝謝..我是一個白癡..這樣一個愚蠢的錯誤... – user2572739

4

拋出空指針異常

嗯,是的,它會。看看你是如何對其進行初始化:

​​

你永遠將其設置爲一個非空引用,所以當你調用它的add,你會肯定得到一個異常。

你可能想:

List<FedespatchVO> listFedespatch = new ArrayList<FedespatchVO>(); 

(您只有使用的是Java 6或更早版本需要在右側的FedespatchVO位;與Java 7或更高版本,你可以只是有new ArrayList<>();和類型將推斷)

+0

傻我!!!謝謝喬恩 – user2572739

1

在低於行

​​

listFedespatch參考包含null
和你想接取它是在這種情況下,空引用setter方法,它給空指針異常

解決方案是

List<FedespatchVO> listFedespatch = new ArrayList<FedespatchVO>();