繁体   English   中英

[JAVA]数组迭代器的arraylist

[英][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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM