如何在Java中创建列表列表并添加任何类型的列表?
我想知道如何创建一个可以包含其他列表的列表,这些列表本身可能包含任何类型的对象 我试过这个,但没用:如何在Java中创建列表列表并添加任何类型的列表?,java,list,Java,List,我想知道如何创建一个可以包含其他列表的列表,这些列表本身可能包含任何类型的对象 我试过这个,但没用: List<List<Object>> lists;// Also tried this List<List<? extends Object>> listados; List<Integer> code; List<String> name; lists.add(1, code); lists
List<List<Object>> lists;// Also tried this List<List<? extends Object>> listados;
List<Integer> code;
List<String> name;
lists.add(1, code);
lists.add(2, name);
列表列表;//也尝试过这个列表你需要这样的东西
List<List<? extends Animal>> lists = new ArrayList<>();
List<Person> listOne = new ArrayList<>();
listOne.add(new Person("abc"));
listOne.add(new Person("def"));
List<Dog> listTwo = new ArrayList<>();
listTwo.add(new Dog("abc"));
listTwo.add(new Dog("def"));
lists.add(listOne);
lists.add(listTwo);
List以上答案基本正确。我只是稍微修改一下
List<List<Object>> lists = new ArrayList<>();
List<Integer> listOne = new ArrayList<>();
listOne.add(1);
listOne.add(2);
List<String> listTwo = new ArrayList<>();
listTwo.add("three");
listTwo.add("four");
lists.add(listOne);
lists.add(listTwo);
List List=new ArrayList();
List listOne=new ArrayList();
增加(1);
增加(2);
List listTwo=新的ArrayList();
清单2.添加(“三”);
清单2.添加(“四”);
lists.add(listOne);
列表。添加(列表二);
你也可以这样做
ArrayList<ArrayList> lists = new ArrayList<ArrayList>();
ArrayList<Integer> l = new ArrayList<Integer>();
l.add(1);
l.add(2);
ArrayList<String> l1 = new ArrayList<String>();
l1.add("hi");
l1.add("hello");
lists.add(l);
lists.add(l1);
for(ArrayList al : lists){
for(Object o : al){
System.out.println(o);
}
}
ArrayList list=new ArrayList();
ArrayList l=新的ArrayList();
l、 增加(1);
l、 增加(2);
ArrayList l1=新的ArrayList();
l1.添加(“hi”);
l1.加上(“你好”);
增加(l);
列表。添加(l1);
用于(ArrayList al:列表){
for(对象o:al){
系统输出打印ln(o);
}
}
Nou,您只添加相同类型的列表,我需要的是将不同类型的列表添加到单个列表中。您的意思是这样的(请参阅更新)嗯,是这样的,但是如果你能用真正的类来做,我会很感激这些是真正的类你在添加之前实例化了列表吗?我几乎不认为使用原始类型来绕过泛型可以回答这个问题,你能解释一下使用ArrayList的优点吗?@不存在使用这种方式没有好处,最好允许对象
不是更严格的类型练习,您应该尽可能多地限制类型。对于第一行,您可以这样做:ListIt甚至不编译。Test.java:16:错误:找不到适合add(List)List.add(listOne)的方法;它不适合我…将List
更改为List