[英][JAVA]arraylist of arrays iterator
正如標題所說,我在迭代數組的arraylist時會出現問題。 這是我的定義: public static ArrayList<JTextArea[]> ta;
這是我從中讀取價值的方式:
Iterator<JTextArea[]> i = Interface.ta.iterator();
while(i.hasNext())
{
JTextArea[] t = (JTextArea[]) i.next();
ret += t[0].getText() + ", ";
}
JTextArea數組總是一個包含四個元素的數組,在此我必須閱讀第一個元素的文本。 問題很簡單,“next()”方法為我提供了每個JTextArea對象,而不是由4個JTextArea組成的完整數組。
有沒有辦法讓Next()方法選擇所有數組?
提前致謝
使用For Each
而不是Iterator
for (JTextArea[] jTextAreaArray : ta) {
// Use jTextAreaArray to do your process.
}
它使用起來非常簡單,而不是Iterator
使單個對象使用。
for (JTextArea[] jTextAreaArray : ta) {
for(JTextArea jTextArea : jTextAreaArray ){
// Do your Process with Individual jTextArea.
}
}
你應該能夠為t數組中的其他3引用t [1],t [2],t [3],所以你的代碼應該是:
ArrayList<JTextArea[]> ta=null;
// setup ta here;
String ret = "";
Iterator<JTextArea[]> i = ta.iterator();
while (i.hasNext()) {
JTextArea[] t = i.next();
ret += t[0].getText() + ", ";
ret += t[1].getText() + ", ";
ret += t[2].getText() + ", ";
ret += t[3].getText() + ", ";
// or
for (int x=0; x<t.length; x++) {
ret += t[x].getText() + ", ";
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.