Concaténation de chaînes de caractères en Java

JavaBeginner
Pratiquer maintenant

Introduction

La concaténation est le processus consistant à combiner deux chaînes de caractères ou plus pour en former une seule. En Java, il existe plusieurs façons de concaténer des chaînes de caractères. Chacune de ces méthodes présente des avantages et des inconvénients selon les exigences. Dans ce laboratoire, nous aborderons les diverses façons dont nous pouvons concaténer des chaînes de caractères en Java.

Concaténer des chaînes de caractères à l'aide de l'opérateur +

La méthode la plus simple pour combiner des chaînes de caractères en Java est d'utiliser l'opérateur +. L'opérateur + est surchargé pour fonctionner avec des chaînes de caractères. Suivez le bloc de code ci-dessous pour voir comment concaténer des chaînes de caractères à l'aide de l'opérateur +.

public class ConcatenateStrings {
    public static void main(String[] args) {
        String a = "Hello";
        String b = "World";
        String combination = a + " " + b;   // Utilisation de l'opérateur + pour concaténer des chaînes de caractères
        System.out.println(combination);    // Sortie : Hello World
    }
}

Concaténer des chaînes de caractères à l'aide de la classe StringBuilder

Une autre façon de concaténer des chaînes de caractères en Java est d'utiliser la classe StringBuilder. La classe StringBuilder fournit la méthode append() pour combiner deux chaînes de caractères ou plus. StringBuilder est plus rapide que la classe String lors de la concaténation de chaînes de caractères. Suivez le bloc de code ci-dessous pour savoir comment concaténer des chaînes de caractères à l'aide de la classe StringBuilder.

public class ConcatenateStrings {
    public static void main(String[] args) {
        String a = "Hello";
        String b = "World";
        StringBuilder builder = new StringBuilder();
        builder.append(a).append(" ").append(b);   // Utilisation de la classe StringBuilder pour concaténer des chaînes de caractères
        String combination = builder.toString();
        System.out.println(combination);   // Sortie : Hello World
    }
}

Concaténer des chaînes de caractères à l'aide de la classe StringBuffer

De manière similaire à StringBuilder, StringBuffer est également une séquence mutable de caractères et fournit la méthode append() pour ajouter des chaînes de caractères. StringBuffer est synchronisé, ce qui signifie que plusieurs threads ne peuvent pas l'accéder simultanément.

public class ConcatenateStrings {
    public static void main(String[] args) {
        String a = "Hello";
        String b = "World";
        StringBuffer buffer = new StringBuffer();
        buffer.append(a).append(" ").append(b);   // Utilisation de la classe StringBuffer pour concaténer des chaînes de caractères
        String combination = buffer.toString();
        System.out.println(combination);   // Sortie : Hello World
    }
}

Concaténer des chaînes de caractères à l'aide de la méthode String.concat()

La méthode concat() peut être utilisée pour concaténer deux chaînes de caractères. Cette méthode utilise internement la classe StringBuilder pour effectuer la concaténation. Suivez le bloc de code ci-dessous pour savoir comment utiliser la méthode concat() pour concaténer des chaînes de caractères.

public class ConcatenateStrings {
    public static void main(String[] args) {
        String a = "Hello";
        String b = "World";
        String combination = a.concat(" ").concat(b);   // Utilisation de la méthode String.concat() pour concaténer des chaînes de caractères
        System.out.println(combination);   // Sortie : Hello World
    }
}

Concaténer des chaînes de caractères à l'aide de la méthode String.join()

La méthode String.join() est utilisée pour concaténer plusieurs chaînes de caractères avec un délimiteur. Le premier paramètre de String.join() est le délimiteur qui doit être ajouté entre les chaînes de caractères. Cette méthode est disponible à partir de Java 8. Suivez le bloc de code ci-dessous pour voir comment concaténer des chaînes de caractères à l'aide de la méthode String.join().

public class ConcatenateStrings {
    public static void main(String[] args) {
        String a = "Hello";
        String b = "World";
        String c = "Java";
        String combination = String.join(" ", a, b, c);   // Utilisation de la méthode String.join() pour concaténer des chaînes de caractères
        System.out.println(combination);   // Sortie : Hello World Java
    }
}

Concaténer des chaînes de caractères à l'aide de la méthode String.format()

La méthode String.format() renvoie une chaîne de caractères formatée. Elle prend la chaîne de formatage comme premier paramètre auquel les variables de chaîne de caractères doivent être concaténées. Elle fonctionne de manière similaire à la fonction printf en C. Suivez le bloc de code ci-dessous pour savoir comment utiliser la méthode String.format() pour concaténer des chaînes de caractères.

public class ConcatenateStrings {
    public static void main(String[] args) {
        String a = "Hello";
        String b = "World";
        String c = "Java";
        String combination = String.format("%s %s %s", a, b, c);  // Utilisation de la méthode String.format() pour concaténer des chaînes de caractères
        System.out.println(combination);   // Sortie : Hello World Java
    }
}

Concaténer des chaînes de caractères à l'aide de la méthode Arrays.toString()

La méthode Arrays.toString() est utilisée pour renvoyer une chaîne de caractères qui représente le contenu du tableau. Suivez le bloc de code ci-dessous pour voir comment utiliser la méthode Arrays.toString() pour concaténer un tableau de chaînes de caractères.

import java.util.Arrays;
public class ConcatenateStrings {
    public static void main(String[] args) {
        String[] strings = {"Hello", "World", "Java"};
        String combination = Arrays.toString(strings);   // Utilisation de la méthode Arrays.toString() pour concaténer un tableau de chaînes de caractères
        System.out.println(combination);   // Sortie : [Hello, World, Java]
    }
}

Concaténer des chaînes de caractères à l'aide de la classe StringJoiner

La classe StringJoiner est utilisée pour joindre des chaînes de caractères avec un délimiteur. La classe StringJoiner est disponible à partir de Java 8. Dans l'exemple suivant, nous allons utiliser la classe StringJoiner pour concaténer trois chaînes de caractères avec un délimiteur. Suivez le bloc de code ci-dessous pour savoir comment utiliser la classe StringJoiner pour concaténer des chaînes de caractères.

import java.util.StringJoiner;
public class ConcatenateStrings {
    public static void main(String[] args) {
        StringJoiner joiner = new StringJoiner(" ");
        joiner.add("Hello");  // Utilisation de la classe StringJoiner pour concaténer des chaînes de caractères
        joiner.add("World");
        joiner.add("Java");
        String combination = joiner.toString();
        System.out.println(combination);   // Sortie : Hello World Java
    }
}

Concaténer des chaînes de caractères à l'aide de la méthode Collection.join()

Nous pouvons également utiliser la méthode join() de la classe Collections pour concaténer une liste de chaînes de caractères. Suivez le bloc de code ci-dessous pour voir comment utiliser la méthode Collections.join() pour concaténer une liste de chaînes de caractères.

import java.util.Arrays;
import java.util.List;
import java.util.Collections;
public class ConcatenateStrings {
    public static void main(String[] args) {
        List<String> strings = Arrays.asList("Hello", "World", "Java");
        String separator = " ";
        String combination = String.join(separator, strings);   // Utilisation de la méthode Collections.join() pour concaténer une liste de chaînes de caractères
        System.out.println(combination);   // Sortie : Hello World Java
    }
}

Concaténer des chaînes de caractères à l'aide de la méthode Files.lines()

Nous pouvons également utiliser la méthode Files.lines() introduite en Java 8 pour concaténer des chaînes de caractères. Suivez le bloc de code ci-dessous pour voir comment utiliser la méthode Files.lines() pour concaténer des chaînes de caractères.

import java.nio.file.Files;
import java.nio.file.Paths;
import java.io.IOException;
public class ConcatenateStrings {
    public static void main(String[] args) {
        try {
            String combination = Files.lines(Paths.get("file1.txt"))
                                     .reduce("", (line1, line2) -> line1 + line2);
            System.out.println(combination);
        } catch (IOException exception) {
            System.out.println("Exception Occurred: " + exception);
        }
    }
}

Remarque : Le bloc de code ci-dessus lit le contenu d'un fichier nommé file1.txt et concatène le contenu en une seule chaîne de caractères.

Résumé

En résumé, il existe de nombreuses façons de concaténer des chaînes de caractères en Java. Dans ce laboratoire, nous avons abordé diverses méthodes telles que l'opérateur +, la classe StringBuilder, la classe StringBuffer, la méthode String.concat(), la méthode String.join(), la méthode String.format(), la méthode Arrays.toString(), la classe StringJoiner, la méthode Collections.join() et la méthode Files.lines(). Il est important de comprendre les subtilités de chaque méthode et de l'utiliser de manière appropriée pour obtenir le résultat souhaité.