我有一个完全正常的循环遍历二维数组。
我想要遍历这个二维数组,从中间开始。例如,如果该数组在两个维度上的长度均为100,则我希望按照以下方式遍历它:
for(int i = 0; i<array.length; i++){
for(int j = 0; i<array.length; j++){
array[i][j].doSomething();
}
}
我想要遍历这个二维数组,从中间开始。例如,如果该数组在两个维度上的长度均为100,则我希望按照以下方式遍历它:
array[50][50] //middle of array
array[49][50] //x-1
array[50][49] //y-1
array[51][50] //x+1
array[50][51] //y+1
array[48][50] //x-2
array[49][49] //x-1 and y-1
array[50][48] //y-2
array[51][49] //x+1 and y-1
array[52][50] //x+2
array[51][51] //x+1 and y+1
array[50][52] //y+2
array[49][51] //x-1 and y+1
etc.
我已经花费数小时寻找一种高效的方法并在互联网上寻找解决方案,但我尚未找到一个很好的答案。有人知道如何做这个吗?