En Java, la concaténation de chaînes forme une nouvelle chaîne qui est la combinaison de plusieurs chaînes. Il existe deux manières de concaténer des chaînes en Java :
- Par l'opérateur + (concaténation de chaînes)
- Par la méthode concat()
1) Concaténation de chaînes par l'opérateur + (concaténation de chaînes)
L'opérateur de concaténation de chaînes Java (+) est utilisé pour ajouter des chaînes. Par exemple:
TestStringConcatenation1.java
class TestStringConcatenation1{ public static void main(String args[]){ String s='Sachin'+' Tendulkar'; System.out.println(s);//Sachin Tendulkar } }Testez-le maintenant
Sortir:
Sachin Tendulkar
Le Transformations du compilateur Java code ci-dessus à ceci :
String s=(new StringBuilder()).append('Sachin').append(' Tendulkar).toString();
En Java, la concaténation de chaînes est implémentée via la classe StringBuilder (ou StringBuffer) et sa méthode append. L'opérateur de concaténation de chaînes produit une nouvelle chaîne en ajoutant le deuxième opérande à la fin du premier opérande. L'opérateur de concaténation String peut concaténer non seulement String mais également des valeurs primitives. Par exemple:
TestStringConcatenation2.java
class TestStringConcatenation2{ public static void main(String args[]){ String s=50+30+'Sachin'+40+40; System.out.println(s);//80Sachin4040 } }Testez-le maintenant
Sortir:
annuler le dernier commit
80Sachin4040
Remarque : Après une chaîne littérale, tous les + seront traités comme des opérateurs de concaténation de chaînes.
2) Concaténation de chaînes par la méthode concat()
La méthode String concat() concatène la chaîne spécifiée à la fin de la chaîne actuelle. Syntaxe:
public String concat(String another)
Voyons l'exemple de la méthode String concat().
normalisation rdbms
TestStringConcatenation3.java
class TestStringConcatenation3{ public static void main(String args[]){ String s1='Sachin '; String s2='Tendulkar'; String s3=s1.concat(s2); System.out.println(s3);//Sachin Tendulkar } }Testez-le maintenant
Sortir:
Sachin Tendulkar
Le programme Java ci-dessus concatène deux objets String s1 et s2 en utilisant concat () méthode et stocke le résultat dans s3 objet.
Il existe d'autres façons possibles de concaténer des chaînes en Java,
1. Concaténation de chaînes à l'aide de la classe StringBuilder
StringBuilder est une classe qui fournit la méthode append() pour effectuer une opération de concaténation. La méthode append() accepte des arguments de différents types comme Objects, StringBuilder, int, char, CharSequence, boolean, float, double. StringBuilder est le moyen le plus populaire et le plus rapide de concaténer des chaînes en Java. Il s'agit d'une classe mutable, ce qui signifie que les valeurs stockées dans les objets StringBuilder peuvent être mises à jour ou modifiées.
StrBuilder.java
public class StrBuilder { /* Driver Code */ public static void main(String args[]) { StringBuilder s1 = new StringBuilder('Hello'); //String 1 StringBuilder s2 = new StringBuilder(' World'); //String 2 StringBuilder s = s1.append(s2); //String 3 to store the result System.out.println(s.toString()); //Displays result } }
Sortir:
noeud de liste Java
Hello World
Dans l'extrait de code ci-dessus, s1, s2 et s sont déclarés comme objets de Générateur de chaînes classe. s stocke le résultat de la concaténation de s1 et s2 en utilisant ajouter () méthode.
2. Concaténation de chaînes à l'aide de la méthode format()
La méthode String.format() permet de concaténer plusieurs chaînes en utilisant un spécificateur de format comme %s suivi des valeurs de chaîne ou des objets.
StrFormat.java
public class StrFormat { /* Driver Code */ public static void main(String args[]) { String s1 = new String('Hello'); //String 1 String s2 = new String(' World'); //String 2 String s = String.format('%s%s',s1,s2); //String 3 to store the result System.out.println(s.toString()); //Displays result } }
Sortir:
Hello World
Ici, les objets String s se voit attribuer le résultat concaténé de Strings s1 et s2 en utilisant Chaîne.format() méthode. format() accepte des paramètres comme spécificateur de format suivis d'objets ou de valeurs String.
3. Concaténation de chaînes à l'aide de la méthode String.join() (Java version 8+)
La méthode String.join() est disponible dans la version Java 8 et toutes les versions ci-dessus. La méthode String.join() accepte d’abord les arguments, un séparateur et un tableau d’objets String.
StrJoin.java :
public class StrJoin { /* Driver Code */ public static void main(String args[]) { String s1 = new String('Hello'); //String 1 String s2 = new String(' World'); //String 2 String s = String.join('',s1,s2); //String 3 to store the result System.out.println(s.toString()); //Displays result } }
Sortir:
année où l'ordinateur a été inventé
Hello World
Dans l'extrait de code ci-dessus, l'objet String s stocke le résultat de String.join('',s1,s2) méthode. Un séparateur est spécifié entre guillemets suivis des objets String ou d'un tableau d'objets String.
4. Concaténation de chaînes à l'aide de la classe StringJoiner (Java version 8+)
La classe StringJoiner possède toutes les fonctionnalités de la méthode String.join(). A l'avance, son constructeur peut également accepter des arguments, préfixes et suffixes facultatifs.
StrJoiner.java
public class StrJoiner { /* Driver Code */ public static void main(String args[]) { StringJoiner s = new StringJoiner(', '); //StringeJoiner object s.add('Hello'); //String 1 s.add('World'); //String 2 System.out.println(s.toString()); //Displays result } }
Sortir:
Hello, World
Dans l'extrait de code ci-dessus, l'objet StringJoiner s est déclaré et le constructeur StringJoiner() accepte une valeur de séparateur. Un séparateur est spécifié entre guillemets. La méthode add() ajoute les chaînes passées en arguments.
5. Concaténation de chaînes à l'aide de la méthode Collectors.joining() (Java (Java version 8+)
La classe Collectors de Java 8 propose la méthode join() qui concatène les éléments d'entrée dans un ordre similaire au fur et à mesure de leur apparition.
ColJoining.java
import java.util.*; import java.util.stream.Collectors; public class ColJoining { /* Driver Code */ public static void main(String args[]) { List liststr = Arrays.asList('abc', 'pqr', 'xyz'); //List of String array String str = liststr.stream().collect(Collectors.joining(', ')); //performs joining operation System.out.println(str.toString()); //Displays result } }
Sortir:
abc, pqr, xyz
Ici, une liste de tableaux String est déclarée. Et un objet String str stocke le résultat de Collectionneurs.joining() méthode.