Как распечатать 2D-массив в Java? - PullRequest
0 голосов
/ 03 июля 2019

Я застрял с этим.Я хочу напечатать массив с его размером, объявленным внутри кода.

package userdefinedarray;

import java.util.Arrays;


public class userdefinedarray 
{    
    public static void main(String[] args) 
    {        
    int[][] myArray = new int[5][10];    
    for(int i=0;i<myArray.length;i++)
    {
        myArray[i] = null;
    }
    System.out.println(Arrays.toString(myArray));
    System.out.println(Arrays.deepToString(myArray));
}

}

Вот вывод.Что случилось с >> [10] << в "new int [5] [10]"? </p>

[null, null, null, null, null]
[null, null, null, null, null]

Ответы [ 2 ]

2 голосов
/ 03 июля 2019

Ваш двумерный массив состоит из массивов массивов.Думайте об этом таким образом.Для каждого элемента массива представьте новый массив как элемент.Поэтому, чтобы распечатать его, вам нужно будет выполнить итерацию по каждому из этих массивов, другими словами, по строкам и столбцам.

for(int i=0; i<myArray.length;i++){
    for(int j=0;j<myArray[0].length;j++)
       System.out.print(myArray[i][j] + " ");
    System.out.println();
}

Если вы хотите заполнить ваши массивы каким-либо конкретным ненулевое значение , вы можете сделать это во внешнем цикле for.

Также вы не можете сделать

myArray[i] = null;

Если вы действительно хотите это сделать, используйте

myArray[i] = new int[myArray[0].length];
0 голосов
/ 03 июля 2019

Сначала вы создаете массив, содержащий 5 массивов, каждый из которых имеет 10 int (инициализированный в 0).

Затем в цикле for вы устанавливаете для каждого индекса первого измерения значение null.Затем у вас есть массив, содержащий пять нулевых элементов.

Если по какой-то причине вы действительно хотите работать с нулевыми значениями, я советую вместо этого использовать List.

Если вы хотите установить значения вашего массива, вам следует вложить еще один цикл в первый., но тогда установка в null собственного типа int вызовет исключение, я верю

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