Vervang een teken bij een specifieke index in een tekenreeks in Java

1. Inleiding

In deze korte handleiding demonstreren we hoe je een karakter vervangt bij een specifieke index in een Draad in Java.

We presenteren vier implementaties van eenvoudige methoden die het origineel gebruiken Draad, een karakter, en de index waar we het moeten vervangen.

2. Met behulp van een Character Array

Laten we beginnen met een eenvoudige benadering, met behulp van een reeks char.

Hier is het de bedoeling om de Draad naar char [] en wijs vervolgens het nieuwe toe char bij de opgegeven index. Ten slotte construeren we het gewenste Draad uit die reeks.

openbare String replaceCharUsingCharArray (String str, char ch, int index) {char [] chars = str.toCharArray (); tekens [index] = ch; return String.valueOf (tekens); }

Dit is een ontwerpbenadering op laag niveau en geeft ons veel flexibiliteit.

3. Gebruik de deelstring Methode

Een benadering op een hoger niveau is om de deelstring () methode van de Draad klasse.

Het zal een nieuw Draad door de substring van het origineel samen te voegen Draad vóór de index met het nieuwe teken en de substring van het origineel Draad na de index:

public String replaceChar (String str, char ch, int index) {return str.substring (0, index) + ch + str.substring (index + 1); } 

4. Met behulp van StringBuilder

We kunnen hetzelfde effect krijgen door te gebruiken StringBuilder. We kunnen het teken op een specifieke index vervangen met behulp van de methode setCharAt ():

openbare String replaceChar (String str, char ch, int index) {StringBuilder myString = nieuwe StringBuilder (str); myString.setCharAt (index, ch); retourneer myString.toString (); }

5. Conclusie

In dit artikel hebben we ons gericht op verschillende manieren om een ‚Äč‚Äčteken op een specifieke index in een Draad met behulp van Java.

Draad instanties zijn onveranderlijk, dus we moeten een nieuwe string maken of gebruiken StringBuilder om ons wat veranderlijkheid te geven.

Zoals gewoonlijk is de volledige broncode voor de bovenstaande tutorial beschikbaar op GitHub.