Heim > Java > javaLernprogramm > Veränderbarer String in Java

Veränderbarer String in Java

WBOY
Freigeben: 2024-08-30 15:41:02
Original
750 Leute haben es durchsucht

Mit Mutable String können wir den Inhalt eines vorhandenen Objekts ändern, wodurch kein neues Objekt erstellt wird. Daher sind veränderbare Zeichenfolgen solche Zeichenfolgen, deren Inhalt geändert werden kann, ohne ein neues Objekt zu erstellen. StringBuffer und StringBuilder sind veränderliche Versionen von String in Java, während die Java-String-Klasse unveränderlich ist. Unveränderliche Objekte sind Objekte, deren Inhalt nach der Erstellung nicht mehr geändert werden kann. Immer wenn der Inhalt eines unveränderlichen Objekts geändert wird, wird ein neues Objekt erstellt.

WERBUNG Beliebter Kurs in dieser Kategorie JAVA MASTERY - Spezialisierung | 78 Kursreihe | 15 Probetests

Wie verwende ich veränderliche Zeichenfolgen in Java?

Wie bereits erwähnt, kann der veränderbare String in Java mithilfe der Klassen StringBuffer und StringBuilder erstellt werden. Der Hauptunterschied zwischen den beiden besteht darin, dass StringBuffer eine Thread-sichere Implementierung ist, StringBuilder hingegen nicht. Immer wenn hohe Leistung und hohe Sicherheit erforderlich sind, sollte man veränderbare Versionen der String-Klasse bevorzugen. Aufgrund des String-Pools gibt es Sicherheitsprobleme mit der String-Klasse; Daher werden StringBuffer und StringBuilder immer dann verwendet, wenn Datensicherheit erforderlich ist. StringBuffer ist hinsichtlich der Leistung besser als StringBuffer, da StringBuffer Thread-sicher ist, aber wenn Thread-Sicherheit erforderlich ist, sollte man sich für StringBuffer entscheiden.

Konstruktoren der StringBuilder- und StringBuffer-Klassen

Im Folgenden sind die Hauptkonstruktoren der String-Builder- und String-Puffer-Klassen aufgeführt.

1. StringBuffer-Konstruktoren

Die folgenden String-Puffer-Konstruktoren sind:

  • StringBuffer(): Dies erstellt einen leeren StringBuffer mit einer Standardkapazität von 16 Zeichen.
  • StringBuffer(int Capacity): Dies erstellt einen leeren StringBuffer mit einer angegebenen Kapazität.
  • StringBuffer(CharSequence charseq): Dadurch wird StringBuffer erstellt, der dieselben Zeichen wie in der angegebenen Zeichenfolge enthält.
  • StringBuffer(String str): Erstellt einen StringBuffer, der dem angegebenen String entspricht.

Hier ist die Deklaration der StringBuffer-Klasse:

public final class StringBuffer extends Object implements Serializable,CharacterSequence
Nach dem Login kopieren

2. StringBuilder-Konstruktoren

Die folgenden String-Builder-Konstruktoren sind:

  • StringBuilder(): Dies erstellt einen leeren StringBuilder mit einer Standardkapazität von 16 Zeichen.
  • StringBuilder(int Capacity): Dies erstellt einen leeren StringBuilder mit einer angegebenen Kapazität.
  • StringBuilder(CharSequence charseq): Dadurch wird ein StringBuilder erstellt, der dieselben Zeichen wie in der angegebenen Zeichenfolge enthält.
  • StringBuilder(String str): Erstellt einen StringBuilder, der dem angegebenen String entspricht.

Hier ist die Deklaration der StringBuilder-Klasse:

public final class StringBuilder extends Object implements Serializable,CharacterSequence
Nach dem Login kopieren

Jetzt werden wir sehen, welche unterschiedlichen Methoden und Felder in den Klassen StringBuffer und StringBuilder verfügbar sind. Hier ist die Liste der häufig verwendeten Methoden, die in diesen Bereichen verfügbar sind:

Methoden von String-veränderlichen Klassen

Methoden für stringveränderbare Klassen sind unten aufgeführt:

Method Name Description
length() and capacity() The length of a mutable string can be calculated using the length() method, and corresponding capacity can be calculated using capacity().
append(String str)

append(int number)

This method is used for adding new text at the end of an existing mutable string.
insert(int index, String str)

insert(int index, char ch)

Used for inserting text at a specified position in a given string. In the given syntax index specifies the starting index of at which the string will be inserted.
reverse() Used for reversing the order of character in a given string.
delete(int start, int end) and deleteCharAt(int index) Used for deleting characters from a mutable string. Start indicates the starting index of the first character to be removed, and the end index indicates an index of one past the last character to be removed.
replace(int startindex, int endindex, String str) Used for replacing character sequence between startindex and endindex-1 with the specified string.
Methodenname
Beschreibung
length() und Capacity() Die Länge einer veränderlichen Zeichenfolge kann mit der Methode length() berechnet werden, und die entsprechende Kapazität kann mit Capacity() berechnet werden.
append(String str) append(int number) Diese Methode wird zum Hinzufügen von neuem Text am Ende einer vorhandenen veränderbaren Zeichenfolge verwendet.
insert(int index, String str) insert(int index, char ch) Wird zum Einfügen von Text an einer angegebenen Position in einer bestimmten Zeichenfolge verwendet. In der angegebenen Syntax gibt Index den Startindex an, an dem die Zeichenfolge eingefügt wird.
reverse() Wird zum Umkehren der Zeichenreihenfolge in einer bestimmten Zeichenfolge verwendet.
delete(int start, int end) und deleteCharAt(int index) Wird zum Löschen von Zeichen aus einer veränderbaren Zeichenfolge verwendet. Start gibt den Startindex des ersten zu entfernenden Zeichens an, und der Endindex gibt einen Index von eins nach dem letzten zu entfernenden Zeichen an.
replace(int startindex, int endindex, String str) Wird zum Ersetzen der Zeichenfolge zwischen startindex und endindex-1 durch die angegebene Zeichenfolge verwendet.

The above-listed methods are commonly used methods of StringBuffer and StringBuilder classes.

Examples of Mutable String in Java

Examples of mutable string in java are given below:

Example #1

Let us see a basic example of a StringBuffer class.

Code:

package com.edubca.mutablestringdemo;
public class MutableStringDemo{
public static void main(String args[]){
StringBuffer sBuffer1=new StringBuffer("Welcome");
System.out.println("Original String is ::: " + sBuffer1 + ":: having length " + sBuffer1.length());
//using append method
sBuffer1.append(" To Edubca");
System.out.println("Modified String after append is :: " + sBuffer1 + "  :: having length " + sBuffer1.length());
//using reverse method
sBuffer1.reverse();
System.out.println("Modified String after Reverse is :: " + sBuffer1);
}
}
Nach dem Login kopieren

The above code shows the creation of java StringBuffer and its different methods. The following output will be produced:

Output:

Veränderbarer String in Java

Example #2

In this example, we will see how to use StringBuilder in java.

Code:

package com.edubca.mutablestringdemo;
public class MutableStringDemo{
public static void main(String args[]){
StringBuilder sBuilder=new StringBuilder("WelcomeToEdubca");
System.out.println("Original String is ::: " + sBuilder + ":: having length " + sBuilder.length());
//using replace method
sBuilder.replace(0,9,"This is ");
System.out.println("Modified String after replace is :: " + sBuilder + "  :: having length " + sBuilder.length());
//using delete method
sBuilder.delete(0,7);
System.out.println("Modified String after delete is :: " + sBuilder);
}
}
Nach dem Login kopieren

Output:

Veränderbarer String in Java

In the above example, we have seen how to createStringBuilder class and usage of its methods.

Das obige ist der detaillierte Inhalt vonVeränderbarer String in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage