[Java]Stringbuffer

infifi

Cadet 1st Year
Registriert
Juni 2013
Beiträge
8
Hallo,

möchte ich möchte einen Stringbuffer vergleichen, komme aber prinzipiell nicht auf die richtige Lösung.

Ich weiß, das man Stringbuffer nicht miteinander vergleichen kann, wandel diese deshalb in einem String um um zu vergleichen, doch anscheinend ist die Syntax.

Die Fehlerzeile ist in Kursiv.

Wäre dankbar um Hilfe

Code:
Stringbuffer Zahlenfolge = new Stringbuffer("");

...                 

for (int x = 1; x < zahlenfolge.length(); x++)
{

[I]if (zahlenfolge.toString().charAt(x).equals(zahlenfolge.toString().charAt(x + 1)))[/I]

{

 zahlenfolge.deleteCharAt(x);

 }

}
 
StringBuffer ist legacy, verwende StringBuilder wenn möglich.

Ansonsten: warum vergleichst Du jedes einzelne Zeichen und verwendest nicht String#equals?
 
Vor allem löscht du doch nur doppelte Zeichen aus deinem String. Darüber hinaus fliegt dir das jedes Mal um die Ohren, da du in der letzten Iteration auf den letzten Index+1 zugreifst. Das geht zwangsläufig schief.

Was genau möchtest du denn erreichen?
 
Muss in dem Fall die einzelnen Zeichen vergleichen, ist es trotzdem nicht möglich es zu vergleichen?

Ich habe nur einen Code ausschnitt hier rausgezogen
 
char ist ein primitiver Datentyp und stellt keine Methoden bereit (keine equals Methode).
Du könntest die chars mit == vergleichen.
 
Zurück
Oben