Hallo zusammen,
Das folgende Programm gibt zwei Arrays aus (a und b). Ich frage mich, wieso die beiden Ausgaben verschieden sind. (Programmbeschreibung siehe unten)
Die Ausgabe ist:
Programmbeschreibung:
Zunächst werden die zwei Arrays a und b initialisiert.
Die swap() Methode vertauscht einfach zwei Elemente aus dem ihr übergebenen Array. Ihm wird quasi ein Array und die beiden x- & y-Koordinaten der zu tauschenden Arrays übergeben.
Die Methode print() gibt einfach das Array in der Konsole aus.
Frage:
Meiner meinung nach müssten beide Ausgaben gleich sein. Der Unterschied liegt doch nur darin, dass bei der ersten Ausgabe, die Rückgabe von swap in der Variable (im Array) b zwischengespeichert wird. :bahnhof:
Das folgende Programm gibt zwei Arrays aus (a und b). Ich frage mich, wieso die beiden Ausgaben verschieden sind. (Programmbeschreibung siehe unten)
Die Ausgabe ist:
###
4 3
2 1
###
###
1 3
2 4
###
Java:
import java.util.*;
import java.lang.*;
import java.io.*;
public class Test {
public static void main(String[] args) {
int[][] a=new int[2][2];
a[0][0]=1; //initialisiere Array a
a[0][1]=2;
a[1][0]=3;
a[1][1]=4;
int[][] b=new int[2][2];
b[0][0]=8; //initialisiere Array b
b[0][1]=8;
b[1][0]=8;
b[1][1]=8;
b=swap(a,0,0,1,1);
print(b);
print(swap(a,0,0,1,1));
}
public static void print(int[][] bd){
System.out.println("###");
System.out.println(bd[0][0]+" "+bd[1][0]);
System.out.println(bd[0][1]+" "+bd[1][1]);
System.out.println("###");
}
public static int[][] swap(int[][] bd, int xpos1, int ypos1, int xpos2, int ypos2){ //Vertauscht zwei Elemente
int sto=bd[xpos1][ypos1];
bd[xpos1][ypos1]=bd[xpos2][ypos2];
bd[xpos2][ypos2]=sto;
return bd;
}
}
Zunächst werden die zwei Arrays a und b initialisiert.
Die swap() Methode vertauscht einfach zwei Elemente aus dem ihr übergebenen Array. Ihm wird quasi ein Array und die beiden x- & y-Koordinaten der zu tauschenden Arrays übergeben.
Die Methode print() gibt einfach das Array in der Konsole aus.
Frage:
Meiner meinung nach müssten beide Ausgaben gleich sein. Der Unterschied liegt doch nur darin, dass bei der ersten Ausgabe, die Rückgabe von swap in der Variable (im Array) b zwischengespeichert wird. :bahnhof:
Zuletzt bearbeitet: