Невозможно получить доступ к размеру или элементу вложенного списка - PullRequest
0 голосов
/ 07 апреля 2020

Я получаю ошибку при доступе к размеру или элементу внутреннего списка в Java.

Это ошибка, которую я получаю

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)+ " ");
          }
       }
    }
}

Ответы [ 3 ]

1 голос
/ 07 апреля 2020

В вашем объявлении списка q отсутствует информация о том, какие объекты он содержит.

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

Без этой информации единственное, что может знать компилятор, - это то, что он содержит объекты некоторых типов. добрый, поэтому q.get() должен иметь тип Object. Но в классе Object нет методов get() и size(), и это ошибка, которую вы получаете.

0 голосов
/ 07 апреля 2020

Обновите ваш код l oop следующим образом, в основном вам нужно привести 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)+ " ");
          }
       }
    }

Надеюсь, это поможет.

0 голосов
/ 07 апреля 2020

Вы должны использовать List<List<Integer>> q = new ArrayList<>(); вместо List q = new ArrayList();, поскольку вы вставляете группу списков в q.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...