Как многомерный массив построить индекс в Java?

  1. int [] [] [] a = new int [3] [3] [5];
  2. int [] [] [] b = new int [2] [] []; b [0] = new int [2]; // вот почему мы получаем ошибку. в приведенном выше коде, как Java заключить в скобки.

в Java, как приведенный выше код будет выделять память в концепции массива массива.

2 ответа

Решение

вот почему мы получаем ошибку. в приведенном выше коде, как Java заключить в скобки.

int [][][] b = new int[2][][];   //b is an array of (array of (array of int))
b[0] = new int[2];               //b[0] is an (array of (array of int))

Вы назначаете int[2] только (массив int) для b[0]следовательно, дает вам ошибку.

b[0] = new int[2][];             //assign (array of (array of int)) to b[0] --> OK

Короче, b[0] ожидает двухмерный массив, и вы в настоящее время назначаете ему одномерный массив, и это вызывает ошибку.

Массив int [][][] b = new int[2][][]; является массивом массива массива. Так b[0] это массив массивов. Вы выделяете память только для первого измерения, а не второго, поэтому вы получаете ошибку. Пытаться b[0] = new int[2][];

Другие вопросы по тегам