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.