Sostituisci il carattere nella stringa all'indice in Java

  1. Sostituisci un carattere in una stringa all’indice in Java usando substring()
  2. Sostituisci un carattere in una stringa all’indice in Java usando StringBuilder()
  3. Converti la stringa in una Array di chars per sostituire un carattere in una stringa all’indice in Java

Questo articolo introdurrà come possiamo sostituire un carattere in una stringa in un indice specifico in Java. Possiamo utilizzare vari modi per raggiungere il nostro obiettivo, che sono menzionati nei seguenti esempi.

Sostituisci un carattere in una stringa all’indice in Java usando substring()

Nel nostro primo esempio, abbiamo una stringa - ab che ha il carattere A, che è una lettera maiuscola che non si adatta alla frase, e vogliamo sostituirla con un carattere minuscolo a.

Per sostituirlo, usiamo la funzione substring() della classe String che accetta un intervallo o l’indice iniziale della stringa come argomento. Il nostro carattere di destinazione si trova nella posizione dell’indice 8.

ab.substring(0, index) restituisce la parte della stringa da 0 all’ottava posizione. Concateniamo questa parte della stringa con il nostro nuovo carattere a e uniamo la stringa rimanente usando ab.substring(index + 1).

public class ReplaceCharAtIndex {
    public static void main(String[] args) {

        String ab = "This is A String";
        int index = 8;

        String newString = ab.substring(0, index) + 'a'+ ab.substring(index + 1);

        System.out.println(newString);

    }
}

Produzione:

This is a String

Sostituisci un carattere in una stringa all’indice in Java usando StringBuilder()

Abbiamo la stessa stringa che usiamo nel nostro esempio precedente ma useremo StringBuilder() per creare una nuova stringa che è mutabile perché una stringa normale in Java è immutabile. Poiché la newString è ora modificabile, possiamo usare il suo metodo setChartAt() per impostare un nuovo char in una posizione o indice.

newString.setCharAt(8, 'a') imposta il carattere a all’ottava posizione.

public class ReplaceCharAtIndex {
    public static void main(String[] args) {

        String ab = "This is A String";

        StringBuilder newString = new StringBuilder(ab);

        newString.setCharAt(8, 'a');

        System.out.println(newString);

    }
}

Produzione:

This is a String

Converti la stringa in una Array di chars per sostituire un carattere in una stringa all’indice in Java

L’ultimo metodo converte la stringa oldString in un array di char usando toCharArray(). Possiamo sostituire qualsiasi valore in un array specificandone la posizione.

Come possiamo vedere, c’è un errore di battitura in oldString dove la parola è scritta in modo errato, e dobbiamo sostituire il carattere (m) con il carattere (n). Possiamo sostituire il nostro carattere in un indice usando charArray[index] = 'n'.

Infine, dobbiamo convertire il char[] in una stringa usando String.valueOf(). L’output mostra che il carattere è stato sostituito.

public class ReplaceCharAtIndex {
    public static void main(String[] args) {

        String oldString = "This is an example strimg";
        int index = 23;

        char[] charArray = oldString.toCharArray();
        charArray[index] = 'n';

        String newString = String.valueOf(charArray);

        System.out.println(newString);

    }
}

Produzione:

This is an example string

Articolo correlato - Java Char

  • Converti un codice ASCII in caratteri
  • Articolo correlato - Java String

  • Rimuovi un carattere dalla stringa in Java
  • Leggere un file in una stringa in Java