Remplacement de caractères dans une chaîne à des indices spécifiés
Lorsque vous travaillez avec des chaînes en Java, il est souvent nécessaire de remplacer des caractères spécifiques à des positions désignées dans la chaîne. Cependant, les chaînes en Java sont immuables, ce qui signifie que leur contenu ne peut pas être directement modifié.
Approche incorrecte
L'extrait de code fourni :
String myName = "domanokz"; myName.charAt(4) = 'x';
tente de remplacer le caractère à l'index 4 (« o ») par « x ». Cependant, cela entraînera une erreur car les chaînes Java sont immuables.
Solution
Pour remplacer un caractère à un index spécifique, on peut créer une nouvelle chaîne avec le modifications souhaitées ou utilisez un StringBuilder :
String myName = "domanokz"; String newName = myName.substring(0, 4) + 'x' + myName.substring(5);
Ce code concatène le début de la chaîne avec le caractère de remplacement et la fin de la chaîne pour créer une nouvelle chaîne avec le caractère mis à jour.
StringBuilder myName = new StringBuilder("domanokz"); myName.setCharAt(4, 'x'); System.out.println(myName);
StringBuilder est une structure de données mutable qui nous permet de modifier des chaînes. Nous créons d'abord un objet StringBuilder à partir de la chaîne d'origine, puis utilisons la méthode setCharAt pour remplacer le caractère à l'index spécifié.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!