Menu
Coddy logo textTech

Introduction à StringBuffer

Fait partie de la section Logique & Flux du Journey Java de Coddy. Leçon 45 sur 59.

StringBuffer est similaire à StringBuilder, mais il est thread-safe (sûr pour plusieurs opérations simultanées). Il est utilisé pour créer des chaînes de caractères mutables (modifiables).

Créez un StringBuffer avec le texte initial :

StringBuffer sb = new StringBuffer("Hello");

Ajoutez davantage de texte à l’aide de append() :

sb.append(" World");

Après l'exécution du code ci-dessus, sb contient :

Hello World

Modifiez le texte à l’aide de insert() et replace() :

StringBuffer sb = new StringBuffer("Java");
sb.insert(0, "Hi ");       // ajoute au début
sb.replace(0, 2, "Hey");   // remplace "Hi" par "Hey"

Après l'exécution du code ci-dessus, sb contient :

Hey Java

challenge icon

Défi

Facile

Créez une méthode nommée modifyText qui accepte trois arguments :

  1. Une chaîne (text) à modifier
  2. Une chaîne (target) à rechercher
  3. Une chaîne (replacement) pour remplacer target

La méthode doit :

  1. Créer un StringBuffer avec le texte d’entrée
  2. Remplacer la première occurrence de target par replacement
  3. Ajouter un point d’exclamation à la fin
  4. Retourner la chaîne finale

Les messages retournés doivent être les suivants :

  • Si une entrée est null : retourner "Invalid input"
  • Si target n’est pas trouvé : retourner le texte d’origine avec un point d’exclamation
  • En cas de réussite : retourner le texte modifié

Essayez vous-même

import java.util.Scanner;

public class Main {
    public static String modifyText(String text, String target, String replacement) {
        // Écrivez votre code ici
    }
    
    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));
    }
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux

Entraînez-vous par vous-même : Compilateur Java en ligne