Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java如何遍历ArrayList的ArrayList?_Java_List_Arraylist - Fatal编程技术网

Java如何遍历ArrayList的ArrayList?

Java如何遍历ArrayList的ArrayList?,java,list,arraylist,Java,List,Arraylist,我正在努力掌握这个概念。我以前从未使用过ArrayLists(仅使用数组) 我得到的是: ArrayList<ArrayList<String>> movies = new ArrayList<ArrayList<String>>(); 假设userInput=2;然后我会从用户输入中减去1(因为我知道数组和ArrayList的索引为0),所以userInput=1;(基于他们的多项选择,不是很重要) 然后我想做的是取索引1[Tangled,Zo

我正在努力掌握这个概念。我以前从未使用过
ArrayList
s(仅使用数组)

我得到的是:

ArrayList<ArrayList<String>> movies = new ArrayList<ArrayList<String>>();
假设userInput=2;然后我会从用户输入中减去1(因为我知道数组和ArrayList的索引为0),所以userInput=1;(基于他们的多项选择,不是很重要)


然后我想做的是取索引1[Tangled,Zooptopia,Finding Dory],循环遍历该索引并将其添加到
ArrayList
(而不是
ArrayList
)的
ArrayList

无需循环-您可以通过索引访问
ArrayList
,然后使用
addAll
方法将
ArrayList
在该位置的所有元素添加到结果中:

result.addAll(movies.get(userInput - 1));

使用以下代码,您可以遍历arrayList

private ArrayList<String> myArrayList = new ArrayList<>();
for(int i=0;i<myArrayList.size();i++){
myArrayList.get(i);
// Perform whatever operation here
}
private ArrayList myArrayList=new ArrayList();
对于(inti=0;i,
ArrayList.get(intindex)
方法可以帮助您

ArrayList myList=fullList.get(1);
将为您提供所需的列表,您可以像这样迭代:

for(字符串currString:myList){
//用绳子做事
}


我希望我解释得很好:)

您应该学习如何使用Java Lambdas。您可以使用lambda来迭代ArrayList,因为ArrayList是可迭代的

ArrayList<ArrayList<String>>arrayListofarrayList  = new ArrayList<ArrayList<String>>();
arrayListofarrayList.forEach((arrayList) -> {System.out.println(arrayList.get(1));});
ArrayListStarrayListofArrayList=新建ArrayList();
forEach((arrayList)->{System.out.println(arrayList.get(1));});

ArrayListStarrayListofArrayList=新建ArrayList();
forEach((arrayList)->{\*此处编码!*\});
如果您正在尝试嵌套迭代,您可以:

ArrayList<ArrayList<String>>arrayListofarrayList  = new ArrayList<ArrayList<String>>();
arrayListofarrayList.forEach((arrayList) -> {
arrayList.forEach((item) -> {
    System.out.println(item);
    });
});
ArrayListStarrayListofArrayList=新建ArrayList();
ArrayListFarrayList.forEach((arrayList)->{
arrayList.forEach((项目)->{
系统输出打印项次(项);
});
});

您可以对每个循环使用,也可以对循环使用简单的,以打印ArrayList的ArrayList中的元素。比如说,

ArrayList<Integer> list1 = new ArrayList<>();
list1.add(1);list1.add(2);
ArrayList<Integer> list2 = new ArrayList<>();
list2.add(3);list2.add(4);
ArrayList<Integer> list3 = new ArrayList<>();
list3.add(5);list3.add(6);

ArrayList<ArrayList<Integer>> listOfList = new ArrayList<>();
listOfList.add(list1);
listOfList.add(list2);
listOfList.add(list3);

// Printing elements using for-each loop
for(ArrayList<Integer> eachList : listOfList){
  for(Integer elementInList : eachList){
    System.out.print(elementInList + "\t");
  }
  System.out.println();
}

// Printing elements using for loop
for(int i = 0;i < listOfList.size();i++){
  ArrayList<Integer> eachList = listOfList.get(i);
  for(int j = 0;j < eachList.size();j++){
    System.out.print(eachList.get(j) + "\t");
  }
  System.out.println();
}
ArrayList list1=新的ArrayList();
清单1.添加(1);清单1.添加(2);
ArrayList list2=新的ArrayList();
清单2.添加(3);清单2.添加(4);
ArrayList list3=新的ArrayList();
清单3.添加(5);清单3.添加(6);

ArrayList

声明变量如下

private ArrayList<String> arrayList = new ArrayList<>();
private ArrayList ArrayList=new ArrayList();
然后在方法中添加以下内容

for(int j=0; j < arrayList.size() ; j++){
arrayList.get(i);
 // Your code goes here
}
for(int j=0;j

这应该行得通

谢谢,但愚蠢的问题是:“结果”是什么?这是arraylist词汇表的一部分吗?这适用于arraylist的arraylist?@LLgood您说过要将它们添加到的
arraylist。假定
List result=new ArrayList()。尝试将您的问题分成几个小问题,例如:(1)如何从列表中指定索引处获取元素(2)如何迭代列表中的所有元素(3)如何向列表中添加新元素。回答完这些小问题后,你可以将它们组合在一起,比如
get list from movies in position 1;迭代接收列表中的每个元素;将每个迭代元素添加到另一个列表中
private ArrayList<String> arrayList = new ArrayList<>();
for(int j=0; j < arrayList.size() ; j++){
arrayList.get(i);
 // Your code goes here
}