Maison >Java >javaDidacticiel >Comment puis-je remplacer des caractères dans une chaîne Java à des index spécifiques ?

Comment puis-je remplacer des caractères dans une chaîne Java à des index spécifiques ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-13 05:23:23347parcourir

How Can I Replace Characters in a Java String at Specific Indices?

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 :

  1. String Manipulation :
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.

  1. StringBuilder :
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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn