Что такое и как рассчитывается длина 2D, 3D массива? - PullRequest
0 голосов
/ 12 марта 2011

Я немного запутался с концепцией ... При печати длина двумерного массива равна [20] [20].Ответ был 120 ... Но не удалось выяснить ... Как он был рассчитан?

Ответы [ 2 ]

2 голосов
/ 12 марта 2011

Длина двумерного массива [20] [20] на самом деле составляет всего 20 ... потому что двумерный массив - это просто массив массивов.«Внешний» массив - это массив длиной 20, каждый элемент которого представляет собой массив длиной 20.

public class Test
{
    public static void main(String[] args)
    {
        int[][] array = new int[20][20];
        System.out.println(array.length); // Prints 20
    }
}

Если вы хотите найти total количество элементовмногомерный массив, вам нужно будет суммировать длины каждого подмассива.Например:

public int findTotalLength(int[][] array)
{
    int sum = 0;
    for (int[] subArray : array)
    {
        sum += subArray.length;
    }
    return sum;
}

Обратите внимание, что вы не можете просто взять длину первого подмассива и умножить на него «внешнюю» длину, так как другие подмассивы могут иметь различную длину.(Могут также быть нулевые ссылки, которые приведенный выше код не пытается обнаружить.)

0 голосов
/ 05 января 2013

len = столбцы * столбцы (для двумерного массива), для 3D двумерного массива вы можете угадать просто концепцию программистов, все данные в памяти хранятся в последовательном порядке

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