如何在ArrayList的Arraylist中添加和检索值

时间:2014-07-15 10:00:11

标签: java arraylist

我知道如何创建 ArrayList ArrayList,但如何添加ArrayList添加该特定ArrayList的价值以及如何检索该列表中的数据。

ArrayList<ArrayList<Integer>> arrayList = new ArrayList<ArrayList<Integer>>();

3 个答案:

答案 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.