Неважно, как вы храните ваши данные в массиве ([x] [y] или [y] [x]). Важно то, что вы всегда проходите по массиву непрерывным образом. Двухмерный массив Java по сути является одномерным массивом, хранящим второй массив (например, в случае [y] [x] у вас есть длинный массив [y], в котором каждый y содержит соответствующие [x] массивы для этого линия у).
Чтобы эффективно проходить через весь массив, важно получить доступ к данным таким образом, чтобы вам не приходилось непрерывно выполнять поиск в этом массиве, переходя от одного y-массива xarrays к другому y-массиву. -Из-xarrays. То, что вы хотите сделать, это получить доступ к одному элементу y и получить доступ ко всем x там, прежде чем переходить к следующему элементу y.
Так что в ситуации с массивом [y] [x]. всегда есть первая переменная во внешнем цикле и вторая во внутреннем цикле:
for (int ys = 0; ys < Array[y].length; ys++)
for (int xs = 0; xs < Array[y][x].length; xs++)
{
do your stuff here
}
И, конечно, предварительно выделите обе длины Array.length вне цикла, чтобы избежать необходимости получать эти значения каждый цикл.