Reihen in Java umdrehen

Konsii25

Neues Mitglied
Bei folgendem Programm sollen als Ausgabe (zwei Namen welche in der main methode definiert sind) vertauscht werden also zb.
Max
Mustermann

zu

Mustermann
Max

es klappt für die ersten drei Buchstaben aber nicht für die ganzen Namen.
Kann mir jmd hefen, wo mein Fehler liegt?
Das ist mein programm:


public static void swapRows(char[][] tausch, int i1, int i2)
{
int a;
int b = 1;
int c = 2;

for(int i = 0; i< i1;i++){
a = tausch[b-1];
tausch[b-1]= tausch[c-1];
tausch[c-1]= (char) a;
}


for (int i = 0; i < tausch.length;i++) {
for (int j = 0; j < tausch.length; j++) {
System.out.print(tausch[j]);
}
System.out.print(" ");

}
System.out.println();
}
 
In einem char[][] hast du ein Array von Arrays. Das heißt du brauchst nicht die Buchstaben in dem innersten Array auszutauschen sondern nur die Referenzen (Positionen) der Arrays.
Java:
public static void swapRows(char[][] arr, int i, int j) {
  char[] temp = arr[i];
  arr[i] = arr[j];
  arr[j] = temp;
}
Schön wären dazu auch noch Parameterchecks.
 
Zuletzt bearbeitet:
In einem char[][] hast du ein Array von Arrays. Das heißt du brauchst nicht die Buchstaben in dem innersten Array auszutauschen sondern nur die Referenzen (Positionen) der Arrays.
Java:
public static void swapRows(char[][] arr, int i, int j) {
  char[] temp = arr[i];
  arr[i] = arr[j];
  arr[j] = t;
}
Schön wären dazu auch noch Parameterchecks.
Okay verstehe ich, aber wofür steht das t nach arr[j]=t ?
 

Zurück
Oben