Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Jetzt lerne ich Java 6

String-Manipulationen

Testen Sie unsere 2019 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Es hat natürlich auch Vorteile, dass Strings in Java Objekte sind, das wird Ihnen im Verlauf dieses Films sicherlich klar: Helge Maus zeigt Ihnen, wie Sie Strings konkatenieren, zerteilen oder Teile ersetzen können.
10:17

Transkript

Nachdem Sie hier jetzt die harte Nachricht erfahren haben, dass Strings in Wirklichkeiten Instanzen einer Klasse String ist, und dass es recht Speicher aufwändig ist, Strings zu verarbeiten, wollen wir uns natürlich jetzt auch die Vorteile von Strings anschauen, denn Sie können mit Strings einiges anfangen. Die String-Klasse ist recht gut ausgebaut, und es gibt einiges an Eigenschaftenmethoden, die wir nutzen können. In diesem Film soll es um genau diese gehen. Aber wie gesagt, denken Sie daran, an Performancelöcher, diese sich schaffen können, wenn Sie sehr intensiv mit diesen String-Operationen arbeiten, dann es ist besser mit einem String Buffer beziehungsweise mit einem String Builder zu arbeiten. Auf geht's. Schauen wir uns die Strings an. Das Erste, was wir machen wollen, ist Strings zusammenführen. Dafür gibt es auch einen Fachausdruck, der sich konkatenieren nennt. Hierzu lege ich mir einfach noch einen String an - satz, und, nun, bauen wir aus diesen Variablen hier oben doch einfach mal einen Satz zusammen. Wir machen eine schöne Begrüßung. Zuerst wollen wir das wort hier haben, dann wollen wir natürlich den Helge begrüßen, das wäre name, aber dazwischen müssen wir ein Leerzeichen haben, sonst kleben diese beiden direkt einander. Also hier hängen wir mit einem + Zeichen, verknüpfen Operator an dieser Stelle, noch ein Leerzeichen mit hinein, hängen dann den Namen an Sender. Und dann können wir das Ganze auch ausgeben lassen. Ich lasse das Ganze mal als Satz hier ausgeben, und schon werde ich hier passend begrüßt. Sie dürfen natürlich in Ihrem Programm sich selber begrüßen. Es gibt hier doch noch eine weitere Methode, um mit Sie Strings einander führen können. Das kommt eben von Konkatenieren, und dafür schauen wir uns direkt einmal hier diese Instanz des Strings an. Sobald wir hier diese Instanz benennen und mit einem Punkt anschließen, sehen wir nämlich alle Methoden, die Strings so besitzen. Und wir haben hier also jetzt hier eine recht große Anzahl an Methoden, und Sie sehen, dass das alles eben in java.lang.String liegt. Und ich kann jetzt natürlich nicht alle Methode Ihnen zeigen, aber doch so ein paar möchte ich Ihnen zeigen, und eine davon ist eben hier concat von Konkatenieren. Das bedeutet, hier wird ein String an einen bestehenden String angehängt. Also, das ist der Übergabe-Parameter für die Methode, Erkenntnis, das, was zurückkommt. Und da, ja, sowiese immer ein neuer String erzeugt wird, eine neue Instanz des String-Objektes wird das Ganze immer zurück geliefert, und wir können das dann entsprechend hineinliegen in eine neue Variable, oder es auch einfach so als Komplettes dann ausgeben, das heißt, wir schreiben jetzt hier satz = satz.concat, und jetzt müssen wir einen String hineinlegen, den wir anhängen wollen. Und dann nehme ich einfach mal Maus- mein Nachname, und schon ist die Sache fertig. Sie denken daran, dass das Ergebnis hier aufgefangen werden muss in wieder einer neuen Variable. Ich habe hier einfach die gleiche genommen, damit die entsprechend überschrieben, was er sowieso wird. Wir schauen uns das Ergebnis an, und wir sehen "Hallo, Helge Maus!" Wir haben also jetzt zwei Wege gesehen, wie Sie Strings aneinander fügen können, entweder diesen Weg oder hier über die passende Methode. Im nächsten Schritt wollen wir die Länge eines Strings ermitteln. Es kann schon ganz interessant sein, wenn Sie in der gewissen Anzahl an Zeichen abschneiden wollen oder zum Beispiel kontrollieren wollen, ob irgendein String vielleicht zu lange ist für ein Datenbankfeld. Für solche Dinge ist das ganz gut. Wir wollen einen Integer zurückzubekommen und den das mal anzahlZeichen. Und um die Länge festzustellen, brauchen wir einfach, wieder nur die unsere Instanz zu nehmen, Punkt setzen und da mal kurz durchschauen, was wir hier alles so haben. Wir sehen also jetzt hier diese ganzen Methoden. Und die Methode, die wir suchen, ist die Länge, und daher bietet sie es an, mal kurz bei l zuschauen, und dann haben wir hier die Methode length, Und wir sehen, dass hier ein Integer zurückkommt. Genau das ist es, was wir haben wollen, immer, wenn Sie eine solche Methode hier wählen, sehen Sie auch in Ihrer graphischen Entwicklungsumgebung entsprechend jetzt hier eine kleine Dokumentation. Bei sich sehen Sie das natürlich besser. Ich mache da einen Doppelklick drauf, und damit haben wir die Anzahl der Zeichen geliefert. Und damit wir das auf der Konsole sehen, lassen wir das Ganze dann ausgeben als anzahlZeichen. Wir haben also zur Zeit 16 Zeichnen innerhalb unseres Stings. Als Nächstes wollen wir Teilstücke innerhalb eines Strings finden, auch das kann sehr interessant sein. Machen wir einfach als Kommentar dadrüber: Wir wollen einen Suchstring besuchen. Ich definiere mir hier einfach mal einen in der Variable Suchen. Ich möchte gerne wissen, ob mein Name darin vorkommt. Und dafür müssen wir uns jetzt wieder eine passende Methode suchen. Ich tippe also mal wieder satz, denn Punkt (.), und wir schauen mal bei den Methoden, ob wir das etwas finden, was ganz gut hinkommt. Und wir sehen, jetzt hier gibt es eine Methode contains, also enthält, Und wenn wir dann das auswählen, lesen wir wieder nach, und was das Ganze geht. Wir können also hier sehen, aha, wir bekommen einen boolischen Wert zurück. Ja oder nein, eben true or false. Das Ganze gibt es seit Java1.5. Und wir müssen übergeben ein CharSequencez, also eine Zeichenkette. Und wir können das Ganze auch nachlesen oder auch einfach probieren, ob man mit unserem String zufrieden ist, also, contains, Klammer auf, wir legen jetzt unsere Suche hier hinein. Jetzt kommt hier ein boolischer Wert zurück, mit dem wollen wir natürlcih irgendwas machen. Und boolische Werte lassen sich sehr schön in Abfragen fassen, das heißt, wir brauchen da einfach eine Abfrage außen herum. Wenn also mein Name darin vorkommt, möchte ich das natürlich gerne hier auf der Konsole ausgegeben bekommen. dass nur eine Zeile ist, nur einen Codeblock. Wir sagen einfach "Enthält", und je nachdem, was wir angeben haben, hängt einfach das Suchwort dadran. Dann sieht man nämlich hier, nach was Sie gerade gesucht haben, im Moment eben nach Helge. Wir lassen das Ganze mal laufen. Wir bekommen keinen Fehler. Es ist also mit dem String als CharSequence zufrieden, und wir sehen das Enthält: Helge, gucken wir doch mal gerade, ob zufällig gehart auch dran vorkommt. Ja, und wir bekommen keine Ausgabe, also kein "Gerhard" in diesem Satz. Das ist also eine schöne Sache. Gut, damit haben wir also Teile in Strings gefunden. Und wenn wir gerade beim Teilen sind, es ist vielleicht ganz interessant, auch einen String mal zu zerschneiden. Das nennt man einen Substring machen. Und das soll jetzt wenigstens Thema sein, wir machen einen Substring. Wir sagen, wir wollen einen Teil nur davon haben. Und jetzt müssen wir uns überlegen, ja, was wollen wir denn davon haben. Und wir schauen einfach mal nach Substring, Und wenn wir mal einen Sub schon eingeben, dann sehen wir, es gibt nun 3 Methoden für Sub. Aller drei liefern einen String zurück, wie wir das auch erwartet haben. Und hier gibt es eben einen, wo wir nur einem Integer Wert einen Index eingeben. Und wenn wir das ein bisschen nachlesen in der Doku, dann sehen wir da, aha, denn kann ab einem gewissen Buchstaben etwas suchen und damit eben einen Teil-String machen, das heißt, ab dem dritten Buchstabe will ich nur diesen String haben oder ähnliches. Wenn man nur einen Teil mit außen will, dann kann man auch hier diese zweit Variante nehmen. Hier kann man also begehen und denn Ende definieren, also von bis möchte ich gerne haben. Nun, das ist eine nette Sache. Also nehmen wir einen Substring, und wenn ich jetzt zum Beispiel, nehmen wir das einfach mal ab Buchstuben 6, es ist ganz gut, und dann können wir das Ganze augeben lassen. Werden wir gleich sehen, warum ich den Buchstaben 6 nehme. Ja, dann sehen Sie, dass nur noch mein Name rauskommt, das heißt, ich habe am Anfang das "Hallo" und das Leerzeichen weggeschnitten. So bekomme ich also einen Teil des Ganzen ausgegeben. Das Letzte, was ich Ihnen zeigen möchte, und dann denke ich mal, können Sie einen langen Winterabend dafür nutzen, die anderen Methoden allermal durchzuprobieren ist. Man kann auch Teile eines Strings ersetzen. Das ist also auch eine ganz nette Geschichte, und zwar bekommen wir da wieder einen neuen String geliefert, und wir verwenden mit Ersatz, gucken nach, und das englische Wort für Ersetzen ist "replace", und geben einfach mal re ein, dann sehen wir schon, es gibt hier ein paar replaces. Einmal, ja, alte Charakterkette zu neuen, oder wir können regular Expressions benutzen. Das ist ein Thema für Fortgeschrittene. Daher verwenden wir wohl das hier. Wir sehen, wir können also eine alte Zeichenkette angeben und neue. Und das wollen wir hier einfach mal verwenden und sagen jetzt hier: "Ok, wir wollen das Wort Hallo ersetzt haben durch HuHu oder so." Sehr sinnig. Dann lassen wir das Ganze auch ganz flatt wieder ausgeben. Und Sie sehen aus dem "Hallo, Helge Maus" wurde "Huhu, Helge Maus". Ja, und damit haben Sie jetzt eigentlich gesehen, was man so mit Strings anders treiben kann. Wie gesagt, sind recht Performance auf, wenn der äqual immer eine Copie erstellt wird, und die alten Instanzen irgendwann von der Garbage-Collection weggeschmießen werden müssen, aber vom Prinzip her für eins einer Operation ist das ganz gut und auch funktionabel.

Jetzt lerne ich Java 6

Steigen Sie ein in die Programmierung mit Java 6, lernen Sie die Grundlagen kennen und unternehmen Sie anschließend Ihre ersten Schritte in der objektorientierten Programmierung.

12 Std. 27 min (98 Videos)
Sehr gute Einführung
Jousef M.

Habe mir die Videos sehr gerne angesehen. Tempo ist angemessen und es wird viel über die Theorie erzählt was natürlich den "Java-Horizont" erweitert. Alles in allem ein sehr gelungenes Tutorial, was ich jedem ans Herz lege, der mit Java arbeiten möchte. System.out.println("5/5 Sterne");

 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!