java - 将元素添加到数组列表

标签 java arraylist

我有一个数组列表的数组列表:

ArrayList<ArrayList<Character>> NodesAndServices = new ArrayList<ArrayList<Character>>();

我想将NodesAndServices的每一行添加到另一个数组列表allChars:

    List<Character> allChars = new ArrayList<Character>();

    for (int i = 0; i < NodesAndServices.size(); i++) {
    List<Character> eachListRow = NodesAndServices.get(i);

    for (List<Character> chr : eachListRow) { //Error
        for (char ch : chr) {
            allChars.add(ch);
        }
    }
}

但是你遇到编译时错误:

required: java.util.list
found: java.lang.character

更新

for (int i = 0; i < NodesAndServices.size(); i++) {
    List<Character> eachListRow = NodesAndServices.get(i);

    for (Character chr : eachListRow.get(i)) { //Error,foreach not applicable to type character

            allChars.add(each);
    }
}

最佳答案

for (List<Character> chr : eachListRow) { //Error

编写增强型for时像这样循环,循环变量 chr将取集合中每个元素的值 eachListRow ,这是 List<Character> 。因此,chr类型必须为 Character ,不是List<Character> .

然后你会意识到你甚至不需要嵌套循环:

for (Character chr : eachListRow) { // OK
    allChars.add(ch);
}
<小时/>

注意:您还可以使用增强的 for第一个循环的循环,导致以下代码,该代码更容易阅读:

List<Character> allChars = new ArrayList<Character>();

for (List<Character> eachListRow : NodesAndServices) {
    for (Character chr : eachListRow) {
        allChars.add(ch);
    }
}

关于java - 将元素添加到数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31906677/

相关文章:

java - 如何显示ArrayList每小时的数据?

java - ArrayList的执行过程是怎样的?

java - 从按钮组中获取所选单选按钮的名称

java - 在 java 中维护唯一数组的 ArrayList

java - 错误: Variable might not have been initialized?

java - tabHost.setup() 给出空指针异常(Android studio)

java - 从 ArrayList 中选取随机 ImageButton 会引发 NullPointerException

java - 有什么方法可以为列表中的对象字段编写通用排序代码吗?

java - 是否可以在 java 应用程序中使用 jQAssistant 作为工具?

java - 为什么以下类型在 Java 中是可具体化和不可具体化的?