Kopieren Sie einen String in Java
In der Sprache Java ist ein String
ein Datentyp, der eine Folge von Zeichen speichert. Ein String ist eine Wrapper-Klasse, die Methoden wie compare()
, replace()
und substring()
bereitstellt. Die Objekte werden im heap
-Speicher abgelegt, wenn ein Objekt instanziiert wird.
Kopieren Sie einen String in Java
Unten ist der Codeblock, der Ihnen zeigt, wie Sie eine Zeichenkette in Java kopieren.
public class StringCopy {
public static void main(String[] args) {
String first = "First String";
System.out.println("First initially = " + first);
String second = first;
System.out.println("String copy in second = " + second);
first = "Updated string";
System.out.println("First after update = " + first);
String newCopy = String.copyValueOf(first.toCharArray());
System.out.println("Copy using copyValueOf() = " + newCopy);
String copyString = new String(first);
System.out.println("Copy using new = " + copyString);
}
}
Im obigen Programm wird im ersten Teil der Operation ein String initialisiert. Die Darstellung String first = "First String"
erzeugt eine Instanz von First String
im Speicher; zusätzlich wird diese neue String-Adresse zuerst der Variablen zugewiesen. Dieser Wert wird mit der Methode println()
ausgegeben.
Nun speichert die Zeile String second = first
die erste Referenz in zweiter Instanz und gibt den Kopierwert in einer weiteren Zeile aus. Als Ergebnis enthält die Variable second
die first
Referenz. Dann ändert der first = "Updated string"
die Referenz des ersten vom vorhandenen Wert auf einen anderen String im Heap-Speicher.
Java-Strings sind unveränderlich. Das bedeutet, dass ein erzeugter String im Heap-Speicher vorhanden ist. Und wenn der ersten Variablen ein anderer Wert zugewiesen wird, wird dieser nicht überschrieben. Stattdessen verweist die Variable jetzt auf einen anderen String aus dem Heap-Speicher. Die Verweise im Heap-Speicher werden im Heap gespeichert, es sei denn, der Garbage Collector wird aktiv. Die Funktion leert die Variable aus dem Konstantenspeicherpool, wenn sie von keiner Variablen referenziert wird.
Eine andere Möglichkeit, einen String zu kopieren, verwendet die Methode copyValueOf
. Es handelt sich um eine statische Factory-Methode, die ein Zeichenarray als Eingabe verwendet. Die Instanz wird zunächst mit der Funktion toCharArray
in ein Zeichenarray umgewandelt. Die letzte String-Instanz wird von einer newCopy
-Variable referenziert und in einer weiteren Zeile ausgegeben.
Die dritte Möglichkeit, einen String zu kopieren, besteht darin, das Schlüsselwort new
zu verwenden. Die Methode erstellt zwei Instanzen im Speicher: Die erste enthält den Wert und die andere Variable copyString
speichert die Referenz der first
Variable.
Unten ist der Codeblock, der aus dem obigen Programm resultiert.
Ausgabe:
First initially = First String
String copy in second = First String
First after update = Updated string
Copy using copyValueOf() = Updated string
Copy using new = Updated string
Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.
LinkedInVerwandter Artikel - Java String
- So führen Sie die Konvertierung von String in String-Array in Java durch
- Wie entferne ich eine Unterzeichenkette aus einer Zeichenkette in Java
- So konvertieren Sie Byte-Array in Hex-String in Java
- Wie man Java-String in Byte konvertiert
- Generieren Sie eine zufällige Zeichenkette in Java
- Die Swap-Methode in Java