# String rückwärts



## alias203 (2. Nov 2015)

Hallo zusammen,

ja, ich weiß, dass manche von euch aufschrecken, wenn sie die Überschrift lesen. Dies kann ich auch verstehen, da die Problemlösung eigentlich ganz offensichtlich ist, jedoch habe ich das Problem, dass Java einfach nicht das macht, was ich will. Ich habe auch schon das Forum durchforstet und konnte nichts Passendes finden. Daher mein Hilferuf an euch.

Aufgabe ist ganz simpel: Man gibt über den Parameter ein Wort als String ein, ausgegeben soll dann das eingegebene Wort rückwärts (z.B. aus "ABCD" wird "DCBA").

Mein Ansatz ist Folgender: Der Nutzer gibt das Wort ein, welches via Parameter übergeben wird.
Das eingegebene Wort wird dann in seine einzelnen Buchstaben zerstückelt und diese einzelnen Buchstaben als char in einem Array abgespeichert. Anschließend muss eine Vertauschung der Arrayinhalte erfolgen, die so funktioniert: Der Buchstabe an der 1. Stelle des Arrays (sprich array[0]) kommt an die letzte. Der an 2. Stelle an die vorletzte Stelle, der an der 3. an die vorvorletze usw. bis das gesamte Array abgearbeitet ist.
Praktisch ein "gegeneinanderlaufender" Sortiervorgang.

Nur bekomme ich diesen Ansatz nicht in Java gelöst, hier mal meine Methode bisher:


```
public void wortRueckwaerts(String wort) {
teil = wort.toCharArray();  // Der im Parameter übergebene String wird in seine einzelne Buchstaben zerlegt. Dabei werden die Buchstaben in einem Array
                                  // gespeichert, das über so viele Felder verfügt, wie das eingegebene Wort lang ist.
        int zaehler = teil.length-1;
        for(int i=0; i<teil.length; i++)
        {
                char temp = teil[i];
                teil[i]=teil[zaehler];
                teil[zaehler]=temp;
                zaehler--;
        }
        for(int j = 0; j<teil.length; j++)
        {
            System.out.print(teil[j]);      // Ausgabe des Wortes
        }
}
```

Ausgegeben wird bislang das eingegebene Wort. Sprich der Tauschvorgang scheint gar nicht stattzufinden.

Es wäre sehr nett, wenn mir da jemand behilflich sein könnte.

Viele Grüße


----------



## stg (2. Nov 2015)

Doch, du tauschst aber zu viel. Sobald du in der Mitte angekommen bist tauschst du wieder zurück 

Zur Aufgabae: Du musst doch gar nicht vertauschen. Gib das char-Array einfach von hinten nach vorne aus und fertig.


----------



## alias203 (2. Nov 2015)

Oh je, da habe ich mal wieder vor lauter Wald die Bäume nicht gesehen. 

Vielen Dank!

Gruß


----------



## Hans_G (3. Nov 2015)

Das Rad nicht neu erfinden:


```
System.out.println(new StringBuilder(wort).reverse().toString());
```


----------

