Was Sie über die Verwendung von Strings in Java wissen müssen

Was Sie über die Verwendung von Strings in Java wissen müssen

Sobald Sie mit dem Erlernen von Java begonnen haben, wird die String-Klasse dank ihrer einzigartigen Eigenschaften Ihre Aufmerksamkeit auf sich ziehen.





Sie können Strings in Java einfacher erstellen und bearbeiten als in anderen Sprachen. Das liegt daran, dass die String-Klasse verschiedene Funktionen bietet.





Basierend auf diesen Funktionen gibt es verschiedene Methoden zum Generieren und Bearbeiten von Zeichenfolgen, je nach Ihren Vorlieben und Anforderungen. Ebenso hängt viel von Ihrer Anwendung ab und davon, wo Zeichenfolgen verwendet werden müssen.





Wie unterscheiden sich Java-Strings?

Wenn Sie zuvor mit der Sprache C gearbeitet haben, wissen Sie, dass Strings in C ein Array von sind Zeichen (Zeichen). Andererseits sind Java-Strings unveränderlich und enthalten Unicode-Zeichen.

Windows 10 als erstes

Eine der wichtigsten Funktionen, die Strings in Java einzigartig machen, ist die Verkettung. Verwenden Sie einfach den Additionsoperator +, um zwei oder mehr Strings zu verbinden. Dies ist etwas, was Sie mit anderen Java-Objekten nicht tun können, wie z Punkt oder Kreis .



Außerdem sind Java-Strings, wie bereits erwähnt, unveränderlich, d. h. Sie können sie nicht ändern. Zum Beispiel Methoden wie toUpperCase() und toLowerCase() einen komplett neuen String generieren, anstatt Änderungen am bestehenden String-Inhalt vorzunehmen. Jetzt gibt Ihr Code diese neu generierte Zeichenfolge zurück.

Verwandte: Wie man Text in PHP mit diesen Funktionen manipuliert





Ein weiterer Bereich, in dem sich Strings unterscheiden, ist die Verwendung von Nullzeichen zum Beenden von Strings in Sprachen wie C. In Java sind Strings Objekte, die von Zeichenarrays unterstützt werden. Wenn Sie den Inhalt Ihres Strings so lesen möchten, wie er von Zeichen-Arrays dargestellt wird, verwenden Sie die toCharArray() Methode wird die Arbeit erledigen.

Das Vergleichen von Strings in Java ist auch bequemer als in anderen Programmiersprachen. Anstatt einen langen Codeblock zum Vergleichen von Strings zu schreiben, können Sie die gleich() -Methode, um zwei oder mehr Zeichenfolgen zu vergleichen, die in einem beliebigen Programm verwendet werden. Dies liegt hauptsächlich daran, dass in Java die gleich -Methode wird von der String-Klasse überschrieben, was den Stringvergleich zu einem Kinderspiel macht.





In ähnlicher Weise ist die Suche innerhalb von Teilzeichenfolgen in Java ebenfalls problemlos. Bei der Verwendung von regulären Ausdrücken oder Methoden wie lastIndexOf() und Index von(), Sie können nach Segmenten von Zeichenfolgen suchen und Werte zurückgeben, sobald eine Übereinstimmung gefunden wurde. Sie können auch reguläre Ausdrücke verwenden, um verschiedene Zeichenfolgen zu trimmen und zu teilen und sie einzeln für eine Vielzahl von Anwendungen in jedem Programm zu verwenden.

Wie werden Strings im Speicher abgelegt?

Nachdem Sie nun wissen, was Strings in Java anders und vorteilhaft macht, lassen Sie uns die String-Klasse untersuchen. Wenn Sie ein oder zwei Dinge über die Speicherverwaltung in Java wissen, müssen Sie sich mit den beiden wichtigsten Entitäten Heap und Stack beschäftigt haben.

Der Stack wird verwendet, um Prozesse und Operationen auszuführen, nachdem er von einem Java-Programm aufgerufen wurde, während Heap Inhalte speichert, die zum effektiven Ausführen und Ausführen von Code erforderlich sind. Wie also ist die Speicherverwaltung bei Strings relevant?

Das liegt daran, dass die String-Klasse und die String-Literale in Java unterschiedlich behandelt werden. Dies zeigt an, dass Zeichenfolgenliteralen eindeutiger Speicherplatz im Heapspeicher zugewiesen ist, der als Zeichenfolgenkonstantenpool bezeichnet wird. Daher speichert der String-Konstanten-Pool jedes Mal, wenn Sie String-Literale verwenden, um String-Objekte in Java zu erstellen.

Im Gegenteil, wenn Sie die Neu Schlüsselwort zum Erstellen von String-Objekten, behandelt Java sie wie jedes andere Objekt und sendet sie zur Speicherung an den Heap.

Beispiel für String-Literale

Nachdem Sie nun genug über String-Objekte wissen, gehen wir ein Beispiel für String-Literale durch:


public class muostrings {
public static void main(String args[])
{
String himuo = 'Hello World from MUO';
System. out .println (himuo);
}
}

Hier hat das String-Literal das String-Objekt mit dem Inhalt Hello World von MUO erstellt. Java sendet dieses Objekt an den String Constant Pool.

Verwenden des neuen Schlüsselworts

Sie können auch die Neu Schlüsselwort zum Generieren von String-Objekten.

Das String-Objekt des String himuo mit dem Inhalt Hello World von MUO wurde von einem String-Literal generiert und wird an den String Constant Pool gesendet. Analog können auch String-Objekte mit dem Schlüsselwort new wie folgt erstellt werden:


public class muostringsobj {
public static void main(String args[]) {
char [] strArr = { 'M', 'O', 'U'};
String jStr = new String(strArr);
System. out .println( jStr );
}
}

Das obige Beispiel verwendet die Neu Schlüsselwort, um ein Zeichenfolgenobjekt zu erstellen. Wie zuvor erläutert, werden sie an den Heap gesendet, wo sie mit anderen Variablen und Objekten gespeichert werden, die darauf warten, vom Programm ausgeführt zu werden.

Sie müssen jetzt schon neugierig auf den String Constant Pool sein, und das zu Recht. Es weist Objekten Pool-Speicherplatz basierend auf dem Inhalt des String-Objekts zu. Nachdem der String-Konstanten-Pool Objekte empfangen hat, überprüft er diese, um zu überprüfen, ob zwei Objekte genau denselben Inhalt enthalten.

Können zwei String-Objekte denselben Inhalt speichern?

Wenn ein Zeichenfolgenliteral zum Erstellen eines neuen Objekts verwendet wird, überprüft Java Virtual Machine (JVM) den Objektinhalt und bewertet, ob er bereits im Pool vorhanden ist. Wenn ein Objekt Inhalt enthält, der bereits im Pool vorhanden ist, wird die Referenz des Objekts zurückgegeben, ohne das neue Objekt zu erstellen. Wenn Sie das neue Objekt erstellen müssen, müssen Sie sicherstellen, dass der Inhalt eindeutig und eindeutig ist.

Wenn Sie jedoch die Neu Schlüsselwort um eine neue Zeichenfolge zu erstellen, wird diese anders verarbeitet. Wenn Sie das verwenden Neu Schlüsselwort zum Erstellen eines neuen Strings, wird dieser generiert, unabhängig davon, ob er den gleichen Inhalt wie der vorhandene String enthält.

Dies zeigt an, dass zwei im Heap-Speicher gespeicherte existierende String-Objekte denselben Inhalt haben dürfen; dies unterscheidet sich von String-Objekten, die im String-Konstanten-Pool gespeichert sind. Sie können dies auch mit dem ==-Operator beweisen; es gibt true zurück, wenn zwei Objekte mit derselben physischen Adresse verglichen werden.


public class comparingStrngs {
public static void main(String[] args)
{
String firstLiteral = 'muo1';
String secondLiteral = 'muo1';
System. out .println(firstLiteral == secondLiteral);
String firstKeyword = new String('muo2');
String secondKeyword = new String('muo2');
System. out .println(firstKeyword == secondKeyword);
}
}

Jetzt können Sie Strings in Java leicht verstehen

In diesem Artikel haben Sie gelernt, wie sich Strings in Java unterscheiden, wie Sie Strings in Java verwenden, die Speicherverwaltung von Strings in Java und andere wichtige Details zur Funktionsweise von Strings. Warum schreiben Sie nicht ein Java-Programm, um zwei Strings zu verketten, um Ihr Verständnis zu testen?

Teilen Teilen Tweet Email Python lernen? So manipulieren Sie Strings

Die Verwendung und Manipulation von Strings in Python kann schwierig erscheinen, ist aber täuschend einfach.

Weiter lesen
Verwandte Themen
  • Programmierung
  • Java
Über den Autor Usman Ghani(4 Artikel veröffentlicht)

Usman ist ein Content-Marketer, der mehreren Unternehmen beim organischen Wachstum auf digitalen Plattformen geholfen hat. Er mag sowohl das Programmieren als auch das Schreiben, was bedeutet, dass ihm das Technische Schreiben sehr viel Spaß macht. Wenn er nicht arbeitet, verbringt Usman gerne Zeit damit, Fernsehsendungen anzusehen, Cricket zu verfolgen und über Datenanalyse zu lesen.

Mehr von Usman Ghani

Abonniere unseren Newsletter

Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!

Klicken Sie hier, um zu abonnieren