无法访问嵌套列表的大小或元素

Not Able to Access size or element of Nested list

访问 Java 中内部列表的大小或元素时出现错误。

This is the Error I'm getting

public static void main(String... args) {
    List list = new ArrayList();

    List<Integer> list2 = Arrays.asList(1,2,3);
    List<Integer> list3 = Arrays.asList(5, 6);
    List<Integer> list4 = Arrays.asList(7, 8, 9);

    list.add(list2);
    list.add(list3);
    list.add(list4);

    for (int i = 0; i < list.size(); i++) {
        for (int j = 0; j < list.get(i).size(); j++) {
            System.out.print(list.get(i).get(j)+ " ");
          }
       }
    }
}

您的列表声明 q 缺少有关它包含何种对象的信息。

List<List<Integer>> q = new ArrayList<>();

没有这个信息,编译器唯一能知道的就是它包含某种对象,所以 q.get() 必须有类型 Object。但是 Object class 中既没有 get() 也没有 size() 方法,这就是你得到的错误。

您应该使用 List<List<Integer>> q = new ArrayList<>(); 而不是 List q = new ArrayList();,因为您要在 q 中插入一组列表。

使用以下更新循环代码,基本上您需要将 q.get(i) 转换为列表。

 for (int i = 0; i < q.size(); i++) {
        for (int j = 0; j < ((List) q.get(i)).size(); j++) {
            System.out.print(((List) q.get(i)).get(j)+ " ");
          }
       }
    }

希望对您有所帮助。