Hallo ich hab ein Problem. Folgende Vorgaben muss ich umsetzen:
in der main-Methode ein Array von int-Werten definieren, z. B. int[] testArray = { 0, 1, 2, 3, 4, 5 };
in der main-Methode folgende Anweisungen ausführen:
int[] testArray = { ... };
printArray(testArray);
reverseArray(testArray);
printArray(testArray);
wobei
eine Methode
public static void printArray(int[] a)
nur zur ausgabe dient und eine Methode
public static void reverseArray(int[] a)
die Reihenfolge der Array-Elemente umkehrt.
Der Aufruf reverseArray(testArray) soll also bewirken, dass testArray anschließend
wie folgt ist:
{ 5, 4, 3, 2, 1, 0 }
Mein Versuch:
Wenn ich die Applikation ausführe, schreibt er mir natürlich 2 mal das Ursprungsarray hin...
Wie bekomm ich die Variable testArray nun umgedreht? die reverseArray-Methode ist ja void und testArray ist ne Variable der Mainmethode und keine Instanzvariable, wie kann ich auf sie schreibend zugreifen?
Macht eine Methode die static und void ist überhaupt sinn um das array umzudrehen? sie kann ja weder instanzvariablen schreiben noch hat sie einen rückgabewert...
Bernhard
in der main-Methode ein Array von int-Werten definieren, z. B. int[] testArray = { 0, 1, 2, 3, 4, 5 };
in der main-Methode folgende Anweisungen ausführen:
int[] testArray = { ... };
printArray(testArray);
reverseArray(testArray);
printArray(testArray);
wobei
eine Methode
public static void printArray(int[] a)
nur zur ausgabe dient und eine Methode
public static void reverseArray(int[] a)
die Reihenfolge der Array-Elemente umkehrt.
Der Aufruf reverseArray(testArray) soll also bewirken, dass testArray anschließend
wie folgt ist:
{ 5, 4, 3, 2, 1, 0 }
Mein Versuch:
Code:
class ReverseArrayDemo
extends Object{
public static void main(String[] blablubb) {
int[] testArray = {0,1,2,3,4,5};
printArray(testArray);
reverseArray(testArray);
printArray(testArray);
}
public static void printArray(int[] a){
System.out.print(" {");
for ( int i = 0; i <= a.length-2; i++ )
System.out.print(" " + a[i] + ",");
System.out.print(" " + a[a.length-1]);
System.out.print(" }");
}
public static void reverseArray(int[] a){
for ( int i = 0; i <=(a.length-1)/2; i++ ){
int z = 0;
z=a[i];
a[i]=a[a.length-1-i];
a[a.length-1-i]=z;
}
}
}
Wenn ich die Applikation ausführe, schreibt er mir natürlich 2 mal das Ursprungsarray hin...
Wie bekomm ich die Variable testArray nun umgedreht? die reverseArray-Methode ist ja void und testArray ist ne Variable der Mainmethode und keine Instanzvariable, wie kann ich auf sie schreibend zugreifen?
Macht eine Methode die static und void ist überhaupt sinn um das array umzudrehen? sie kann ja weder instanzvariablen schreiben noch hat sie einen rückgabewert...
Bernhard