Inhaltsverzeichnis:

Kann StringBuilder null sein?
Kann StringBuilder null sein?

Video: Kann StringBuilder null sein?

Video: Kann StringBuilder null sein?
Video: Java Tutorial 95 - StringBuilder 2024, April
Anonim

leer bedeutet, dass im keine Zeichen enthalten sind StringBuilder . Null bedeutet, dass es keine gibt StringBuilder Objekt überhaupt. Eine Variable ist nur Null wenn es einen Referenztyp hat (zum Beispiel String, StringBuilder , Set, als Faustregel: alle großgeschriebenen Typen) und es ist noch nicht initialisiert oder wurde explizit auf gesetzt Null.

Wie weiß ich auch, ob mein StringBuilder leer ist?

Die Längenmethode des StringBuilder oder StringBuffer-Klasse gibt die Länge der Zeichenfolge zurück, die sie derzeit hat. Wie Sie im Beispiel sehen können, zu prüfe ob das StringBuilder ist leer , erhalten Sie die Länge der StringBuilder Objekt. Wenn die Länge ist 0, es ist leer , sonst nicht.

Und warum ist StringBuilder effizienter als StringBuffer? Als Ergebnis, StringBuilder ist schneller als StringBuffer . StringBuffer ist wandelbar. Es kann sich in Länge und Inhalt ändern. StringPuffer sind thread-sicher, d. h. sie verfügen über synchronisierte Methoden zur Zugriffssteuerung, sodass nur ein Thread auf a. zugreifen kann StringBuffer synchronisierten Code des Objekts gleichzeitig.

Wie setzt man dementsprechend einen StringBuilder zurück?

1) Löschen Sie StringBuilder, indem Sie ein neues Objekt zuweisen

  1. öffentliche Klasse JavaStringBufferClearEmptyExample {
  2. public static void main(String args) {
  3. StringBuilder sbStr = null;
  4. for(int i = 1; i <= 5; i++) {
  5. // den Inhalt der vorherigen Iteration löschen.
  6. sbStr = neuer StringBuilder();
  7. sbStr. anhängen(i);
  8. System. aus. print(sbStr);

Wie funktioniert StringBuilder intern in Java?

StringBuilder Objekte sind wie String-Objekte, außer dass sie geändert werden können. Im Inneren , werden diese Objekte wie Arrays mit variabler Länge behandelt, die eine Folge von Zeichen enthalten. Wenn Sie beispielsweise eine große Anzahl von Zeichenfolgen verketten müssen, hängen Sie an a StringBuilder Objekt ist effizienter.

Empfohlen: