ciao a tutti! ho fatto una funzione
codice:
        barca_utile.Dritta=barca.Dritta;
        barca_utile.X_D=barca.X_D;
        barca_utile.Z_D=barca.Z_D;
        // -----------SINISTRA------------
        riempito = false;
        if(!barca.HF){
            barca_utile.Dritta=barca.Sinistra;
            for(int i=0;i<barca_utile.Dritta.length;i++){
                for(int j=0; j<barca_utile.Dritta[0].length;j++){
                    barca_utile.Dritta[i][j]=-barca_utile.Dritta[i][j];
                }
            }
            barca_utile.X_D=barca.X_S;
            barca_utile.Z_D=barca.Z_S;
        } else{
            for(int i=1; i<barca.Dritta.length;i++)
                System.out.println(Arrays.toString(barca.Dritta[i]));
            for(int i=0;i<barca_utile.Dritta.length;i++){
                for(int j=0; j<barca_utile.Dritta[0].length;j++){
                    barca_utile.Dritta[i][j]=-barca_utile.Dritta[i][j];
                }
            }
        }
barca e barca_utile sono delle classi che al loro interno hanno i double[][] dritta e sinistra.
allora ad un certo punto io scrivo
barca_utile.Dritta=barca.Dritta;
e poi, come si vede faccio barca_utile.Dritta*-1 (ciclo for centrale)
ma si modifica anche barca.Dritta!!!! penso perchè gli ho passato un puntatore o sbaglio? e come posso risolvere?