2016-05-13 89 views
-1

我列表中包含一些零和非零條目的數據。現在我想從entries列表中篩選出非零的條目。爲此我創建了名爲nonZeroEntries的其他列表。無法將某個列表的某個元素複製到其他元素

private List<FinancialReport> entries; 
private List<FinancialReport> nonZeroEntries; 

entries = this.financialReportDao.getAllLedger(ledgerName); 
// now entries list have 26 entries with zero and nonzero. 

for (int i = 0; i < entries.size(); i++) { 
      FinancialReport entry = this.entries.get(i); 
      if((entry.getCredit()!=entry.getDebit())) 
      { 
      nonZeroEntries.add(entry); 
      // it shows error here. 
      } 
     } 
} 
+0

什麼問題? – Areca

+2

哎呀,我不知道,也許是NPE –

+1

你得到了什麼錯誤?你說你想過濾掉非零的條目,但在'如果'你正在檢查借記!=信用。對我來說沒有多大意義? – Helios

回答

3

當你有

private List<FinancialReport> nonZeroEntries=null; 

不能添加的東西給它。因此,你需要

private List<FinancialReport> nonZeroEntries=new ArrayList<FinancialReport>(); 

此外,它會更容易理解爲

if(entry.getCredit() != entry.getDebit()) 
+0

我試着私人列表 nonZeroEntries;也。但沒有工作 –

+0

@PritamTiwari你聽說過一個叫做_constructor_的東西嗎? –

+0

@PritamTiwari您需要實例化nonZeroEntries。查看更新的答案 –

1

請檢查你的代碼中,變量nonZeroEntries爲null,元素之前添加到它,你應該這樣做:

nonZeroEntries = new ArrayList<FinancialReport>(); 
相關問題