Das tue ich ja auch… oh mann mir gehen langsam die erklärunen aus…
so sieht meine Funktion aus
public static String replace(String pString, String pBefore, String pAfter)
{
// replace all occurences in string
int pos = 0;
while ((pos = pString.indexOf(pBefore)) \>= 0)
{
pString = (new StringBuffer(pString)).replace(pos, pos + pBefore.length(), pAfter).toString();
}
return pString;
}
Diese befindet sich in der Klasse Statics.
Nun wo ich die aufrufe mache ich
String bla =„abc“
bla = Statics.replace(bla, „a“, „x“);
rauskommen tut dann
bla: „xbc“
ok nun möchte ich aber statt
bla = Statics.replace(bla, „a“, „x“);
nur schreiben:
Statics.replace(bla, „a“, „x“);
und die Funktion soll innendrin bla ändern ohne dass ich den Rückgabewert verwenden muss.
in C++ würde sowas gehen, wenn ich den Parameter als Referenz deklarieren würde, sinngemäß irgendwie so:
replace(String& pString …
Nun frage ich mich ob in Java sowas auch irgendwie geht… in PHP gibt es z.b. sowas auch, da verwende ich etwas ähnliches, wenn ich einen String kürzen will mit shorten($string) und nicht $string = shorten($string) machen will