Hallo, ich habe eine Frage zu Strings in Java. Kann man Strings verändern? ist es möglich, ein Zeichen zu ändern? z.B. String s = "hey"; s.charAt (2) = 'b'; es funktioniert nicht, wieso klappt das nicht ?? Danke Euch ;)
s.charAt(2) ist eine Methode die dir ein Zeichen aus dem String zurück liefert - da ist erstmal die grund warum du es nicht ändern kannst.
Du könntest Dir mal die Klasse StringBuffer ansehen, ist für String-basteleien besser geeignet.
danke für eure antworten. Strings kann ich ja mit String s = .... erzeugen genau wie Datentypen. Jetzt wird hier von Klasse gesprochen. Ist String eine Klasse? Wieso kann ich dann Strings wie ein Datentyp erzeugen?
galileo computing ebook "java ist auch eine insel" fang mal bitte mit den grundlagen an..zu allen primitiven datentypen, zu denen String nicht! zählt gibt es entsprechende Classes.. charAt() ist übrigens nur eine getter methode, siehe api.
In Java werden ja Objekte von Klassen bei der Parameterübergabe als
Objekt Referenzen realisiert (nur der Zeiger wird kopiert und übergeben)
Wenn ich die Klasse
public static test (String s){
s = s+s;
}
habe, sie im hauptprogramm mit einem String aufrufe, dann wird aber das
Original nicht verändert (was bei nochmalen Objekten aber der Fall wäre)
also spricht das dafür, und auch die Art und weise, wie ein string
initialisiert wird dafür, dass String ein Datentyp ist.
Kann mir hier jmd den Unterschied zwischen einem Datentyp und int
erklären?
Hannes, danke für deine Antwort.
Normalerweise sind Objekte von Klassen nicht immutable, sehe ich das
richtig ? Das trifft hier nur auf String zu, oder?
wenn ich ja die Klasse
public class test{
private a;
private b;
}
habe und mit
test a = new a;
a.a = 3;
a.a = 5;
kann ich das Objekt der Klasse verändern, stimmt das also, dass Objekte
von Klassen nicht immutable sind ?
Mir geht es hier um den Unterschied zwischen
Datentypen - String
Klassen - String
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.