私は次のようなアルゴリズムを実行しています:
public int[][] moveLeft(int m[][], int[] index){
Puzzle x = new Puzzle(m);
System.out.println(x);
int[][] p = m;
int temp = p[index[0]][index[1]];
p[index[0]][index[1]] = p[index[0]][index[1]-1];
p[index[0]][index[1]-1] = temp;
return p;
}
具体的には、特定の値の位置を変更して新しいマトリックスを返すことですが、デバッグ中は、次のように変更した場合でも、値「m」も変化することに気付きました。値p。ここで何が問題になっていますか?