logo

Converti array di caratteri in stringhe in Java

Le stringhe sono definite come un array di caratteri. La differenza tra un array di caratteri e una stringa è che la stringa termina con un carattere speciale . Un array di caratteri può essere convertito in una stringa e viceversa. Nell'articolo precedente, abbiamo già discusso come convertire a stringa in un array di caratteri . In questo articolo discuteremo come convertire un array di caratteri in una stringa.

Illustrazioni:

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



Uscita 1: geeksforgeeks

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

Uscita 2: codifica

Metodi:

  1. Utilizzando il metodo copyOf() della classe Arrays
  2. Utilizzando la classe StringBuilder
  3. Utilizzando il metodo valueOf() della classe String
  4. Utilizzando il metodo copyValueOf() della classe String
  5. Utilizzo dei raccoglitori nei flussi

Ora discutiamo ciascuno dei metodi in dettaglio insieme alla loro implementazione con l'aiuto di un programma Java pulito.

Metodo 1: Utilizzando il metodo copyOf() della classe Array

Il carattere specificato può essere passato al file Costruttore di stringhe . Per impostazione predefinita, il contenuto dell'array di caratteri viene copiato utilizzando il metodo Arrays.copyOf() presente nel file Classe degli array .

Esempio:

Giava




// 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));> >}> }>

>

>

Produzione:

geeksforgeeks>

Metodo 2: Utilizzando la classe StringBuilder

Un altro modo per convertire un array di caratteri in una stringa è utilizzare il metodo Classe StringBuilder . Poiché StringBuilder è una classe mutabile, quindi, l'idea è di scorrere l'array di caratteri e aggiungere ciascun carattere alla fine della stringa. Infine, la stringa contiene la forma stringa dei caratteri.

Esempio:

Giava




// 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)); } }>

gigabyte contro megabyte

>

>

Produzione

geeksforgeeks>

Metodo 3: Utilizzando il metodo valueOf() della classe String

Un altro modo per convertire un array di caratteri in una stringa è utilizzare il metodo valore di() metodo presente nella classe String. Questo metodo converte intrinsecamente l'array di caratteri in un formato in cui viene visualizzato l'intero valore dei caratteri presenti nell'array. Questo metodo generalmente converte int, float, double, char, boolean e persino object in una stringa. Qui raggiungeremo l'obiettivo convertendo il nostro array di caratteri in stringa.

Esempio:

Giava




// 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));> >}> }>

>

>

Produzione

geeksforgeeks>

Metodo 4: Utilizzando il metodo copyValueOf() della classe String

Il contenuto dell'array di caratteri viene copiato e successivamente modificato senza incidere sulla stringa da restituire, quindi questo metodo permette anche di convertire l'array di caratteri in una stringa che può essere percepita ancora meglio dall'esempio riportato di seguito come segue.

Esempio:

Giava




// 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);> >}> }>

>

>

Produzione

geeksforgeeks>

Metodo 5: Utilizzo dei raccoglitori nei flussi

Con l'introduzione degli stream in Java8, utilizziamo subito i Collector negli stream per modificare gli elementi dell'array di input dei caratteri e successivamente utilizziamo il metodo join() e restituiamo una singola stringa e la stampiamo.

Esempio:

Giava




// 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);> >}> }>

>

>

Produzione

geeksforgeeks>