したがって、現在の要素の「左」「右」「上」「下」の値を使用しながら、2D 配列を各要素に計算し、それを別の 2D 配列に転送する必要があります。現在の要素が端 (x = 0、y = 0、x = array.length 、y = array.length) にある場合、範囲外の配列エラーが発生します。これらのケースのそれぞれを処理する for ループを作成したいのですが、その方法がわかりません。私のコードのサンプルは
private void buildE(int[][] array, int y, int x)
{
int up = array[y - 1][x];
int down = array[y + 1][x];
int left = array[y][x - 1];
int right = array[y][x + 1];
if(up == 0){
buildETopRow(array);
}
E は私の新しい配列になります。y が 0 に等しくないため、このメソッドは機能しません。存在しないだけですが、int を null に設定することもできません。範囲外エラーの場合、範囲外の要素 (上、下、左、または右) を現在の要素と等しくする必要があります。これに for ループを引き続き使用できる方法はありますか、それとも何か他のことをする必要がありますか?