Convertir un tableau de caractères en chaîne en Java

Les chaînes sont définies comme un tableau de caractères. La différence entre un tableau de caractères et une chaîne est que la chaîne se termine par un caractère spécial . Un tableau de caractères peut être converti en chaîne et vice versa. Dans l'article précédent, nous avons déjà expliqué comment convertir un chaîne dans un tableau de caractères . Dans cet article, nous verrons comment convertir un tableau de caractères en chaîne.

Illustrations :

Entrée 1 : char s[] = { 'g', 'e', ​​'e', ​​'k', 's', 'f', 'o', 'r', 'g', 'e', ​​'e', 'k', 's' }

Sortie 1 : geeksforgeeks

Entrée 2 : char s[] = { 'c', 'o', 'd', 'i', 'n', 'g' }

Sortie 2 : codage

Méthodes :

  1. Utilisation de la méthode copyOf() de la classe Arrays
  2. Utilisation de la classe StringBuilder
  3. Utilisation de la méthode valueOf() de la classe String
  4. Utilisation de la méthode copyValueOf() de la classe String
  5. Utilisation de collecteurs dans les flux

Discutons maintenant de chacune des méthodes en détail tout en les mettant en œuvre à l'aide d'un programme Java propre.

Méthode 1 : Utilisation de la méthode copyOf() de la classe Array

Le caractère donné peut être passé dans le Constructeur de chaîne . Par défaut, le contenu du tableau de caractères est copié à l'aide de la méthode Arrays.copyOf() présente dans le fichier Classe de tableaux .

Exemple:

Java




// Java Program to Convert Character Array to String> // Using copyOf() method ofArrays() Class> // Importing required classes> import> java.util.*;> // Main class> class> GFG {> > // Method 1> > // To convert a character> > // array to a string using the constructor> > public> static> String toString(> char> [] a)> > {> > // Creating object of String class> > String string => new> String(a);> > return> string;> > }> > // Method 2> > // Main driver method> > public> static> void> main(String args[])> > {> > // Declaring and initializing a character array> > char> s[] = {> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> ,> 'f'> ,> 'o'> ,> > 'r'> ,> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> };> > // Printing converted string from character array> > System.out.println(toString(s));> > }> }>

Sortir:

geeksforgeeks 

Méthode 2 : Utilisation de la classe StringBuilder

Une autre façon de convertir un tableau de caractères en chaîne consiste à utiliser le Classe StringBuilder . Puisqu'un StringBuilder est une classe mutable, l'idée est donc de parcourir le tableau de caractères et d'ajouter chaque caractère à la fin de la chaîne. Enfin, la chaîne contient la forme chaîne des caractères.

Exemple:

Java




// Java Program to Convert Character Array to String> // Using StringBuilder Class> // Importing required classes> import> java.util.*;> // Main class> public> class> GFG {> > // Method 1> > // To convert a character array to a string> > // using the StringBuilder class> > public> static> String toString(> char> [] a)> > {> > // Creating object of String class> > StringBuilder sb => new> StringBuilder();> > // Creating a string using append() method> > for> (> int> i => 0> ; i sb.append(a[i]); } return sb.toString(); } // Method 2 // Main driver method public static void main(String args[]) { // Declaring and initialzaing input character array char s[] = { 'g', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's' }; // Printing the string // corresponding to character array System.out.println(toString(s)); } }>

Sortir

geeksforgeeks 

Méthode 3 : Utilisation de la méthode valueOf() de la classe String

Une autre façon de convertir un tableau de caractères en chaîne consiste à utiliser le valeur de() méthode présente dans la classe String. Cette méthode convertit intrinsèquement le tableau de caractères dans un format dans lequel la valeur entière des caractères présents dans le tableau est affichée. Cette méthode convertit généralement les int, float, double, char, boolean et même object en chaîne. Ici, nous atteindrons l'objectif en convertissant notre tableau de caractères en chaîne.

Exemple:

Java




// Java Program to Convert Character Array to String> // Using valueOf() method of String Class> // Importing required classes> import> java.util.*;> // Main class> class> GFG {> > // Method 1> > // To convert a character array to string> > // using the valueOf() method> > public> static> String toString(> char> [] a)> > {> > // Creating an object of String class> > String string = String.valueOf(a);> > return> string;> > }> > // Method 2> > // Main driver method> > public> static> void> main(String args[])> > {> > // Declaring and initializing input character array> > char> s[] = {> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> ,> 'f'> ,> 'o'> ,> > 'r'> ,> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> };> > // Print the corresponding string to> > // character array> > System.out.println(toString(s));> > }> }>

Sortir

geeksforgeeks 

Méthode 4 : Utilisation de la méthode copyValueOf() de la classe String

Le contenu du tableau de caractères est copié puis modifié sans affecter la chaîne à renvoyer, cette méthode nous permet donc également de convertir le tableau de caractères en une chaîne qui peut être encore mieux perçue à partir de l'exemple fourni ci-dessous comme suit.

Exemple:

Java




// Java Program to Convert Character Array to String> // Using copyValueOf() method of String Class> // Importing String class> import> java.util.*;> // Main class> class> GFG {> > // Main driver method> > public> static> void> main(String[] args)> > {> > // Declaring and initializing input character array> > char> [] arr = {> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> ,> 'f'> ,> 'o'> ,> > 'r'> ,> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> };> > // Storing it in a string> > // using copyValueOf() over string> > String str = String.copyValueOf(arr);> > // Printing the converted string corresponding> > // character array> > System.out.print(str);> > }> }>

Sortir

geeksforgeeks 

Méthode 5 : Utilisation de collecteurs dans les flux

Avec l'introduction des flux dans Java8, nous utilisons immédiatement des collecteurs dans les flux pour modifier les éléments de notre tableau d'entrée de caractères et utilisons plus tard la méthode join() pour renvoyer une seule chaîne et l'imprimer.

Exemple:

Java




// Java Program to Convert a Character array to String> // Using Collectors in Streams in Java8> // Importing Collectos and Stream classes> // from java.util.stream package> import> java.util.stream.Collectors;> import> java.util.stream.Stream;> // Main class> class> GFG {> > // Main driver method> > public> static> void> main(String[] args)> > {> > // Custom input character array> > char> [] charr = {> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> ,> 'f'> ,> 'o'> ,> > 'r'> ,> 'g'> ,> 'e'> ,> 'e'> ,> 'k'> ,> 's'> };> > // Using collectors to collect array elements and> > // later using joining method to return a single> > // string> > String str = Stream.of(charr)> > .map(arr ->> new> String(arr))> > .collect(Collectors.joining());> > // Printing the stream received from Collectors> > System.out.println(str);> > }> }>

Sortir

geeksforgeeks