ArrayList с массивами в нем.Как их вытащить.код опубликован - PullRequest
0 голосов
/ 07 декабря 2011

Маленькая проблема .. я хочу добавить несколько массивов в мой массив и позже получить доступ к их распечатке.Она - мой код

Ответы [ 5 ]

2 голосов
/ 07 декабря 2011

Ваша проблема в линии System.out.println(X.get(listNumber));. Каждый объект Java имеет метод toString(). Массивы также имеют такой метод, но его реализация показывает ссылку на массив. Чтобы напечатать содержимое массива, либо итерируйте его и печатайте поэлементно, либо используйте утилиту типа Arrays.toString():

System.out.println(java.util.Arrays.toString(X.get(listNumber)));

1 голос
/ 07 декабря 2011

Это потому, что массивы toString(), которые вызываются здесь, выводят ссылку на массив, а не его содержимое.

Используйте вместо этого пользовательский вывод:

    for (int i : X.get(listNumber))
        System.out.print(i + " ");

Или, как предложил AlexR, лучшеиспользуйте предоставленный метод JDK Arrays.toString();

Кстати, вам не нужно ставить префикс this. везде в коде вашего класса.

1 голос
/ 07 декабря 2011

Перебирать все целочисленные массивы в X и в каждом элементе (массиве) печатать его элементы.Эта функция сделает всю работу за вас.

public void printAll(){
for(int [] item:X){
 for(int num :item){
  System.out.print(num);
  }
   System.out.println();
 }

}
0 голосов
/ 07 декабря 2011

Вы пытаетесь получить массив.Если вы хотите отобразить результаты массива, вам нужно выполнить цикл по каждому значению в X.get(listNumber) и отобразить результаты цикла.

0 голосов
/ 07 декабря 2011

Вам необходимо использовать класс Arrays из java.util.Arrays:

System.out.println(Arrays.toString(X.get(listNumber)));

Простая распечатка массива распечатывает его ячейку памяти, поэтому, чтобы получить действительные значения, вы должны получить каждый элемент отдельно, что Arrays.toString() делает для вас.

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