Umkehren des Inhalts eines Java -Array ist eine gemeinsame Aufgabe und erfordert nicht viel Code. Es gibt verschiedene mögliche Ansätze zur Umkehr Array Ordnung, aber die einfachste ist , indem sie von jedem Ende der Anordnung zur Mitte , Austauschen jedes Paar von Elementen in der Reihe. Um Positionen Element in einem Array austauschen , müssen Sie etwa die Hälfte von ihnen in eine temporäre Variable kopieren , wie Sie gehen , denn sobald Sie ein Element verschieben in eine andere Lage , Ihnen ein weiteres Element überschrieben wird . Anleitung
1
Planen Sie Ihre Array. Wenn Sie nicht bereits über ein Array-Objekt in Ihrem Programm , jetzt einen erstellen :
//Erstellen eines Arrays und die Länge
int [ ] = new int someNumbers [13] ;
//instanziieren das Array mit einigen Elementen
for (int i = 0; i < someNumbers.length ; i + +)
someNumbers [i] = i;
Dieses Beispiel verwendet primitiven Typ int , aber die Methode funktioniert für Arrays jeder Art, einschließlich der Gegenstände . Für dieses Beispiel das Array enthält anfänglich Zahlen läuft von Null aufwärts
2
Erstellen Sie Variablen zur Verfolgung Ihrer Position zu halten , während Sie entlang des Arrays von jedem Ende verschieben: .
//man beginnt in der ersten Position , die andere in der letzten
int leftPosn = 0;
int rightPosn = someNumbers.length -1;
der Algorithmus verwenden wird eine Schleife wird jeder Iteration von denen beinhalten Vertauschen zweier Elemente , beginnend durch Vertauschen der ersten und letzten , dann weiter in Richtung der Mitte.
3
erstellen Schleife für Ihren Algorithmus . Sie können unabhängig von der Art der Schleife am meisten Sinn macht für Sie, aber in diesem Fall ist die einfachste Möglichkeit ist eine while-Schleife :
//prüfen, ob linken und rechten Positionen noch um die Mitte
< p erreichen haben > while ( leftPosn < rightPosn )
{
//Schleife Inhalt geht hier
}
die Schleife wird so lange fortgesetzt, wie die linken und rechten Zähler sind noch nicht in der Mitte des Feldes erreicht .
4
Swap jedes Paar von Elementen in der Reihe. Inside your while-Schleife (bei "loop content goes here " ):
//kopieren Sie die linke Element des Paares in eine neue temporäre Variable
int tempCopy = someNumbers [ leftPosn ] ;
//kopieren Sie den rechten Element in der linken Position
someNumbers [ leftPosn ] = someNumbers [ rightPosn ] ;
/* kopieren Sie die ursprüngliche linke Element aus der temporären Variable
* in die Position ganz rechts * /Tablet
someNumbers [ rightPosn ] = tempCopy ; .
Die temporäre Variable muss nur bei jeder Iteration der Schleife verfügbar
5
Bewegen Sie Ihre Position Zählervariablen entlang jeder Ausführung der Schleife . In der while-Schleife Code-Block (nach dem swap) :
//Inkrement-und Dekrement Positionen weiter zu arbeiten in Richtung der Mitte
leftPosn + +;
rightPosn - ;
Testen Sie Ihr Code , indem Sie Ihr Programm und die Ausgabe der Inhalte Ihrer Array wie folgt (nach der while-Schleife ):
for (int j = 0; j < someNumbers.length ; j + +)
System.out.println ( someNumbers [j]) ;