Convertir array de caracteres a string en Java

Las strings se definen como una array de caracteres. La diferencia entre una array de caracteres y una string es que la string termina con un carácter especial «\0». Una array de caracteres se puede convertir en una string y viceversa. En el artículo anterior, ya hemos discutido cómo convertir una string en una array de caracteres . En este artículo, discutiremos cómo convertir una array de caracteres en una string. 

Ilustraciones:

Entrada 1: char s[] = { ‘g’, ‘e’, ​​’e’, ​​’k’, ‘s’, ‘f’, ‘o’, ‘r’, ‘g’, ‘e’, ​​’ e’, ‘k’, ‘s’ } 

Salida 1: «geeksforgeeks» 

Entrada 2: char s[] = { ‘c’, ‘o’, ‘d’, ‘i’, ‘n’, ‘g’ } 

Salida 2: «codificación»

Métodos:

  1. Usando el método copyOf() de la clase Arrays
  2. Usando la clase StringBuilder
  3. Usando el método valueOf() de la clase String
  4. Usando el método copyValueOf() de la clase String
  5. Uso de recopiladores en flujos

Ahora analicemos cada uno de los métodos en detalle junto con su implementación con la ayuda de un programa Java limpio.

Método 1: Usar el método copyOf() de la clase Array

El carácter dado se puede pasar al constructor String . De forma predeterminada, el contenido de la array de caracteres se copia mediante el método Arrays.copyOf() presente en la clase Arrays

Ejemplo:

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

Producción: 
 

geeksforgeeks

Método 2: Usar la clase StringBuilder

Otra forma de convertir una array de caracteres en una string es usar la clase StringBuilder . Dado que StringBuilder es una clase mutable, la idea es iterar a través de la array de caracteres y agregar cada carácter al final de la string. Finalmente, la string contiene la forma de string de los caracteres.

Ejemplo:

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 < a.length; 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));
    }
}
Producción

geeksforgeeks

Método 3: Usar el método valueOf() de la clase String

Otra forma de convertir una array de caracteres en una string es usar el método valueOf() presente en la clase String. Este método convierte inherentemente la array de caracteres a un formato en el que se muestra el valor completo de los caracteres presentes en la array. Este método generalmente convierte int, float, double, char, boolean e incluso object en una string. Aquí lograremos el objetivo al convertir nuestra array de caracteres en una string.

Ejemplo:

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));
    }
}
Producción

geeksforgeeks

Método 4: Usar el método copyValueOf() de la clase String

Los contenidos de la array de caracteres se copian y posteriormente se modifican sin afectar la string que se devolverá, por lo tanto, este método también nos permite convertir la array de caracteres en una string que se puede percibir aún mejor en el ejemplo que se proporciona a continuación.

Ejemplo:

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);
    }
}
Producción

geeksforgeeks

Método 5: uso de recopiladores en secuencias

Con la introducción de flujos en java8, usamos de inmediato Colectores en flujos para modificar nuestros elementos de array de entrada de caracteres y luego usamos el método de unión() y devolvemos una sola string e imprimimos.

Ejemplo:

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);
    }
}
Producción

geeksforgeeks

Publicación traducida automáticamente

Artículo escrito por KaashyapMSK y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *