StringBuffer-Einführung
Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy — Lektion 45 von 59.
StringBuffer ist ähnlich wie StringBuilder, aber thread-sicher (sicher für mehrere Operationen zur gleichen Zeit). Es wird verwendet, um veränderliche (modifizierbare) Strings zu erstellen.
Einen StringBuffer mit anfänglichem Text erstellen:
StringBuffer sb = new StringBuffer("Hello");Füge mehr Text hinzu mit append():
sb.append(" World");Nach der Ausführung des obigen Codes enthält sb:
Hello World
Text mit insert() und replace() modifizieren:
StringBuffer sb = new StringBuffer("Java");
sb.insert(0, "Hi "); // fügt am Anfang hinzu
sb.replace(0, 2, "Hey"); // ersetzt "Hi" mit "Hey"Nach der Ausführung des obigen Codes sb enthält:
Hey Java
Aufgabe
EinfachErstellen Sie eine Methode namens modifyText, die drei Argumente annimmt:
- Ein String (
text) zum Modifizieren - Ein String (
target) zum Finden - Ein String (
replacement) zum Ersetzen des Targets
Die Methode sollte:
- Einen StringBuffer mit dem Eingabetext erstellen
- Das erste Vorkommen von target mit replacement ersetzen
- Ein Ausrufezeichen am Ende hinzufügen
- Den finalen String zurückgeben
Rückgabemeldungen sollten sein:
- Wenn irgendein Input null ist: geben Sie "Invalid input" zurück
- Wenn target nicht gefunden: geben Sie den originalen Text mit Ausrufezeichen zurück
- Für erfolgreiche Operation: geben Sie den modifizierten Text zurück
Spickzettel
StringBuffer ist thread-sicher und wird verwendet, um veränderliche Strings zu erstellen.
Erstellen Sie einen StringBuffer mit anfänglichem Text:
StringBuffer sb = new StringBuffer("Hello");Fügen Sie Text mit append() hinzu:
sb.append(" World");Fügen Sie Text an einer spezifischen Position ein:
sb.insert(0, "Hi "); // fügt am Anfang hinzuErsetzen Sie Text mit replace():
sb.replace(0, 2, "Hey"); // ersetzt Zeichen von Index 0 bis 2Probier es selbst
import java.util.Scanner;
public class Main {
public static String modifyText(String text, String target, String replacement) {
// Schreibe deinen Code hier
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String text = scanner.nextLine();
String target = scanner.nextLine();
String replacement = scanner.nextLine();
if (text.equals("null")) text = null;
if (target.equals("null")) target = null;
if (replacement.equals("null")) replacement = null;
System.out.println(modifyText(text, target, replacement));
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Mehrdimensionale Arrays
Grundlagen der 2D-ArraysZugriff auf 2D-Array-ElementeVerschachtelte Schleifen mit 2D-ArraysZusammenfassung - 2D-ArraysMatrixaddition & SubtraktionJagged Arrays3D-Arrays und darüber hinausGängige 2D-Array-MusterZusammenfassung - Alles über Arrays2HashMap Teil 1
Was ist eine HashMap?Eine HashMap deklarierenWerte abrufenPrüfen, ob ein Schlüssel existiertWörterbücher modifizierenZusammenfassung - HashMap5HashSet Teil 2
Mathematik - Vereinigung von HashSetsMathematik - Schnittmenge von HashSetsMathematik - Mengen-DifferenzMathematik - Symmetrische DifferenzUnter- und ObermengenIterieren über Mengen8Fortgeschrittene String-Operationen
StringBuilder-GrundlagenStringBuffer-EinführungGrundlagen regulärer AusdrückeMusterabgleich mit RegexString-TokenizerFortgeschrittene String-Formatierung3HashMap Teil 2
HashMap-MethodenMit keySet() iterierenMit entrySet() iterierenVerschachtelte HashMapZusammenfassung - Lager verwaltenZusammenfassung - HashMap-Operationen6Erweiterter Steuerungsfluss
Beschriftete AnweisungenSwitch-AusdruckMusterabgleichSchutzklauselnZusammenfassung - Steuerungsfluss9Projekt - Einzigartiger Wortzähler
Texteingabe und SpeicherungWortverarbeitung