我知道如何创建 ArrayList
ArrayList
,但如何添加新ArrayList
和添加该特定ArrayList
的价值以及如何检索该列表中的数据。
ArrayList<ArrayList<Integer>> arrayList = new ArrayList<ArrayList<Integer>>();
答案 0 :(得分:3)
你可以试试这个
ArrayList<ArrayList<Integer>> arrayList = new ArrayList<>();
ArrayList<Integer> list1=new ArrayList<>();
ArrayList<Integer> list2=new ArrayList<>();
list1.add(1); // add to list
list1.add(2);
list2.add(3);
list2.add(4);
arrayList.add(list1); // add to list of list
arrayList.add(list2);
for(ArrayList<Integer> i:arrayList){ // iterate -list by list
for(Integer integer:i){ //iterate element by element in a list
}
}
您可以直接获取元素
arrayList.get(0).get(0); // 0th list 0th value
将值添加到第0个列表
arrayList.get(0).add(1); // 1 will add to 0th index list-list1
答案 1 :(得分:3)
如何将新的ArrayLists和ADD值添加到该特定的ArrayList 以及如何检索列表中的数据表单。
ArrayList<ArrayList<Integer>> arrayList=new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> newAL= new ArrayList<Integer>();
arrayList.add(newAL);
newAL.add(1);
newAL.add(2);
newAL.clear();
System.out.println(arrayList.get(0));
//Changes persist in your arraylist
因此,添加ArrayList后,您可以操作newAL
ArrayList
存储引用,而不需要从主arrayList
获取和设置元素。
要检索数据,您可Iterate
(使用ForEach Loop)而不是arrayList
,或者您可以执行以下操作
Integer List0Item1=arrayList.get(0).get(1);//Get first element of list at 0
arrayList.get(0).set(0, 10);//set 0th element of list at 0 as 10
ArrayList<Integer> list10=arrayList.get(10);//get arraylist at position 10
答案 2 :(得分:2)
这是一个列表列表,其中父列表的每个对象又是一个子列表。代码如下所示:
List<List<String>> mainList = new ArrayList<List<String>>();
List<String> sublist1 = new ArrayList<String>();
sublist1.add("State");
sublist1.add("Country");
sublist1.add("City");
mainList .add(sublist1);
List<String> sublist2 = new ArrayList<String>();
sublist2.add("Sleep");
sublist2.add("Suspend");
sublist2.add("Wait");
mainList .add(sublist2);
for(List<String> obj:mainList){ // iterate
for(String value:obj){
System.out.println(value);
}
}
}
}
Hope this will help to clear your doubt.