簡體   English   中英

從ArrayList內部方法獲取數據

[英]Get data from ArrayList inside method

我有一個包含對象的ArrayList項

ArrayList<Object> nodeList;

我用記錄填充我檢索這樣的表單數據庫

//start loop
nodeList.add(getResultSet().getString(i).trim());
//end loop

現在,我想獲得那些結果,所以我創建一個“ getter”方法

public Object getResults(){
    for(int i = 0; i < nodeList.size(); i++){
        return nodeList.get(i);
    }
}

Netbeans告訴我,雖然我在循環內返回了arrayList的每個對象,但是缺少return語句。 我應該如何解決? 我試圖返回一個對象數組,但是它也不起作用。 它仍然處於循環中,它希望在循環外返回某些內容。 先感謝您。

Netbeans抱怨是因為,如果列表為空,則代碼將不會進入for循環主體,並且永遠不會返回任何值。

同樣,您的getter方法沒有任何意義。 您總是返回列表中的第一個元素,因為return將退出該方法。 如果“想獲得這些結果”,則應該只返回整個nodeList

public List<Object> getResults() {
   return nodeList;
}

如果要在索引i處獲取元素,則可以將getter編寫如下:

public Object getResult(int i) {
   return nodeList.get(i);
}

另外,正如Luiggi在評論中指出的那樣,您可以避免將結果添加到Object列表中,而是創建一個實體類,並在其中創建與檢索到的列相對應的字段。

一旦返回命令,方法就完成了。 之所以會出錯,是因為如果您將提供空列表作為方法參數,則在這種情況下,for循環將被忽略,並且方法應返回某些內容。

如果要從列表中返回一些值,則應編寫如下內容:

public Object getResults(int position){
        return nodeList.get(position);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM