Reemplace un carácter en un índice específico en una string en Java

 En Java, aquí se nos da una string, la tarea es reemplazar un carácter en un índice específico en esta string.

Ejemplos: 

Input: String = "Geeks Gor Geeks", index = 6, ch = 'F'
Output: "Geeks For Geeks."
Input: String = "Geeks", index = 0, ch = 'g'
Output: "geeks"

Método 1: usar la clase de string

No hay un método predefinido en String Class para reemplazar un carácter específico en String, a partir de ahora. Sin embargo, esto se puede lograr indirectamente mediante la construcción de una nueva string con 2 substrings diferentes, una desde el principio hasta el índice específico: 1, el nuevo carácter en el índice específico y la otra desde el índice + 1 hasta el final.

A continuación se muestra la implementación del enfoque anterior: 

Java

public class GFG {
 
    public static void main(String args[])
    {
 
        // Get the String
        String str = "Geeks Gor Geeks";
 
        // Get the index
        int index = 6;
 
        // Get the character
        char ch = 'F';
 
        // Print the original string
        System.out.println("Original String = " + str);
 
        str = str.substring(0, index) + ch
              + str.substring(index + 1);
 
        // Print the modified string
        System.out.println("Modified String = " + str);
    }
}
Producción

Original String = Geeks Gor Geeks
Modified String = Geeks For Geeks

Método 2: Usar StringBuilder

A diferencia de String Class, la clase StringBuilder se usa para representar una string mutable de caracteres y tiene un método predefinido para cambiar un carácter en un índice específico: setCharAt(). Reemplace el carácter en el índice específico llamando a este método y pasando el carácter y el índice como parámetro.

A continuación se muestra la implementación del enfoque anterior: 

Java

public class GFG {
 
    public static void main(String args[])
    {
 
        // Get the String
        String str = "Geeks Gor Geeks";
 
        // Get the index
        int index = 6;
 
        // Get the character
        char ch = 'F';
 
        // Print the original string
        System.out.println("Original String = " + str);
 
        StringBuilder string = new StringBuilder(str);
        string.setCharAt(index, ch);
 
        // Print the modified string
        System.out.println("Modified String = " + string);
    }
}
Producción

Original String = Geeks Gor Geeks
Modified String = Geeks For Geeks

Método 3: Usar StringBuffer

Al igual que StringBuilder, la clase StringBuffer tiene un método predefinido para este propósito: setCharAt(). Reemplace el carácter en el índice específico llamando a este método y pasando el carácter y el índice como parámetro. StringBuffer es seguro para subprocesos y se puede usar en un entorno de subprocesos múltiples . StringBuilder es más rápido en comparación con StringBuffer, pero no es seguro para subprocesos.

A continuación se muestra la implementación del enfoque anterior:

Java

public class GFG {
 
    public static void main(String args[])
    {
 
        // Get the String
        String str = "Geeks Gor Geeks";
 
        // Get the index
        int index = 6;
 
        // Get the character
        char ch = 'F';
 
        // Print the original string
        System.out.println("Original String = " + str);
 
        StringBuffer string = new StringBuffer(str);
        string.setCharAt(index, ch);
 
        // Print the modified string
        System.out.println("Modified String = " + string);
    }
}
Producción

Original String = Geeks Gor Geeks
Modified String = Geeks For Geeks

Publicación traducida automáticamente

Artículo escrito por RishabhPrabhu 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 *