Strenger er definert som en rekke tegn. Forskjellen mellom en tegnarray og en streng er at strengen avsluttes med et spesialtegn . En tegnarray kan konverteres til en streng og omvendt. I den forrige artikkelen har vi allerede diskutert hvordan du konverterer en streng til en tegnarray . I denne artikkelen vil vi diskutere hvordan du konverterer en tegnarray til en streng.
Illustrasjoner:
Inngang 1: char s[] = { 'g', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's' }
metode overbelastningUtgang 1: geeksforgeeks
Inngang 2: char s[] = { 'c', 'o', 'd', 'i', 'n', 'g' }
Utgang 2: koding
Metoder:
- Bruker metoden copyOf() i Arrays-klassen
- Bruker StringBuilder-klassen
- Bruker metoden valueOf() i String-klassen
- Bruker metoden copyValueOf() i String-klassen
- Bruke samlere i strømmer
La oss nå diskutere hver av metodene i detalj ved siden av å implementere dem ved hjelp av et rent java-program.
Metode 1: Bruker copyOf()-metoden til Array-klassen
Det gitte tegnet kan overføres til Strengekonstruktør . Som standard kopieres innholdet i tegnmatrisen ved å bruke Arrays.copyOf()-metoden som finnes i Klasse Arrays .
Eksempel:
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));> >}> }> |
>
>
Produksjon:
geeksforgeeks>
Metode 2: Bruker StringBuilder-klassen
En annen måte å konvertere en tegnarray til en streng er å bruke StringBuilder-klassen . Siden en StringBuilder er en foranderlig klasse, er ideen derfor å iterere gjennom tegnarrayen og legge til hvert tegn på slutten av strengen. Til slutt inneholder strengen strengformen til tegnene.
Eksempel:
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)); } }> |
>
>Produksjon
geeksforgeeks>
Metode 3: Bruker metoden valueOf() i String-klassen
En annen måte å konvertere en tegnarray til en streng er å bruke verdien av() metode som finnes i String-klassen. Denne metoden konverterer iboende tegnmatrisen til et format der hele verdien av tegnene som er tilstede i matrisen vises. Denne metoden konverterer vanligvis int, float, double, char, boolean og til og med objekt til en streng. Her vil vi oppnå målet ved å konvertere karakterarrayen vår til streng.
Eksempel:
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));> >}> }> |
>
>Produksjon
geeksforgeeks>
Metode 4: Bruker metoden copyValueOf() i String-klassen
Innholdet fra tegnmatrisen kopieres og endres deretter uten å påvirke strengen som skal returneres, derfor gjør denne metoden oss også i stand til å konvertere tegnmatrisen til en streng som kan oppfattes enda bedre fra eksemplet nedenfor som følger.
Eksempel:
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);> >}> }> |
>
>Produksjon
geeksforgeeks>
Metode 5: Bruke samlere i strømmer
Med introduksjonen av strømmer i java8 bruker vi umiddelbart samlere i strømmer for å modifisere våre tegninndatamatriseelementer og bruker senere joining()-metoden og returnerer en enkelt streng og skriver den ut.
Eksempel:
Java
pete davidson
// 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);> >}> }> |
>
>Produksjon
geeksforgeeks>