Fala galera ainda não consegui resolver o problema que estou tento com matrizes:
Estou tentando fazer uma cópia de uma matriz fonte para outra matriz auxiliar podendo assim fazer testes na matriz auxiliar sem alterar a original mas não estou conseguindo fazer isso.
Vou colocar o código de um trecho do programa e depois vou explicar:
private void cima(int x, int z){
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
System.out.print(atual[i][j]);
System.out.print("cima \n");
System.arraycopy(atual,0,auxcima,0,auxcima.length);
auxcima[x][z] = auxcima[x-1][z];
auxcima[x-1][z] = 0;
atualiza_botao_cima();
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if (auxcima[i][j] == meta[i][j])
NoLugar++;
R1 = NoLugar;
jTextField1.setText(Integer.toString(R1));
NoLugar = 0;
}
private void baixo(int x, int z){
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
System.out.print(atual[i][j]);
System.out.print("baixo \n");
System.arraycopy(atual,0,auxbaixo,0,auxbaixo.length);
auxbaixo[x][z] = auxbaixo[x+1][z];
auxbaixo[x+1][z] = 0;
atualiza_botao_baixo();
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if (auxbaixo[i][j] == meta[i][j])
NoLugar++;
R2 = NoLugar;
jTextField2.setText(Integer.toString(R2));
NoLugar = 0;
}
No programa o método cima é chamado e logo depois o método baixo é chamado assim coloquei no inicio de cada código dois for para realizar a impressão da matriz original( no programa ela se chama atual) para saber como ela está chegando em cada função. Como em cada função estou fazendo os testes necessários com a matriz auxiliar era pra matriz atual chegar inalterada em cada função mas isso não acontece ela está mudando e não que parte do código está fazendo isso.
Alguem pode me ajudar a resolver este problema já estou quase desistindo.
Obrigado