StringBuffer an konstruktor übergeben

AndreG

Erfahrenes Mitglied
Hi Leute

Ich hätte mal die Frage ob es möglich ist bei einem kunstruktor einen StringBuffer zu übergeben und diesen dann anschließen in eine db zu schreiben. Hier mal mein versuch.
Code:
StringBuffer result = new StringBuffer();
    if (BestNrSt.length > 0) {
        result.append(BestNrSt[0]);
        for (int i=1; i<BestNrSt.length; i++) {
            result.append("-");
            result.append(BestNrSt[i]);
        }
    }    
    sp1.speichern(result);
    }
das Array BestNr. ist schon initzialiesiert und auch mit werten gefüllt. Dann will ich sp1 und den kunstruktor speichern davon aufrufen. nur kommt dann folgene Fehlermeldung:

Ausgabe.java [379:1] speichern(java.lang.String) in Bestellung cannot be applied to (java.lang.StringBuffer)
sp1.speichern(result);
^
1 error
Errors compiling Ausgabe.

das ist dann der Kunstruktor: public void speichern(String result) {

Thx for Help
 
Ausgabe.java [379:1] speichern(java.lang.String) in Bestellung cannot be applied to (java.lang.StringBuffer)
sp1.speichern(result);
^
1 error
Fällt dir was auf ? ;)
Du übergibst einen StringBuffer, aber speichern() erwartet einen String.
 
Original geschrieben von AndreG
das ist dann der Kunstruktor: public void speichern(String result)
DAS wage ich zu bezweifeln ;). Das ist eine simple Methode und kein Konstruktor. Ein Konstruktor heißt genau wie deine Klasse, hat keinen Rückgabewert (nur ein implizites void, welches aber nicht explizit angegeben werden darf) und wird nur im Zusammenhang mit der Erzeugung eines neuen Objektes der Klasse mit Hilfe des Schlüsselwortes new aufgerufen.

In deinem Fall solltest du dieser Methode dann auch einen String übergeben, wenn sie dies erwartet. Wandle also den StringBuffer in einen String um:
Code:
sp1.speichern(result.toString());
Peter
 

Neue Beiträge

Zurück