Was ist besser StringBuffer oder StringBuilder?
Was ist besser StringBuffer oder StringBuilder?

Video: Was ist besser StringBuffer oder StringBuilder?

Video: Was ist besser StringBuffer oder StringBuilder?
Video: Java 2: StringBuilder 2024, Kann
Anonim

String ist unveränderlich, wohingegen StringBuffer und StringBuider sind veränderliche Klassen. StringBuffer ist threadsicher und synchronisiert, während StringBuilder ist nicht, deshalb StringBuilder ist schneller als StringBuffer . String concat + Operator intern verwendet StringBuffer oder StringBuilder Klasse.

Welcher ist dementsprechend besser StringBuffer oder StringBuilder?

Als Ergebnis, StringBuilder ist schneller als StringBuffer . StringBuffer ist wandelbar. Es kann sich in Länge und Inhalt ändern. StringPuffer sind threadsicher, d. h. sie verfügen über synchronisierte Methoden zur Zugriffskontrolle, sodass nur einer Thread kann auf a zugreifen StringBuffer synchronisierten Code des Objekts gleichzeitig.

Warum ist StringBuffer langsamer als StringBuilder? Das durch erstellte Objekt StringBuffer wird im Heap gespeichert. StringBuffer hat die gleichen Methoden wie die StringBuilder , aber jede Methode in StringBuffer ist synchronisiert das ist StringBuffer ist threadsicher. Daher StringBuilder ist schneller als das StringBuffer beim Aufruf derselben Methoden jeder Klasse.

Was ist der Unterschied zwischen StringBuffer und StringBuilder?

StringBuilder . StringBuilder ist das gleiche wie die StringBuffer d.h. es speichert das Objekt im Heap und kann auch modifiziert werden. Das Wichtigste Unterschied zwischen das StringBuffer und StringBuilder ist dass StringBuilder ist nicht threadsicher. StringBuilder ist schnell, da es nicht threadsicher ist.

Wann sollte ich StringBuffer verwenden?

Wenn sich der Objektwert ändern kann und nur von einem einzelnen Thread aus zugegriffen wird, verwenden ein StringBuilder, weil StringBuilder nicht synchronisiert ist. Falls sich der Objektwert ändern kann und von mehreren Threads geändert wird, verwenden ein StringBuffer da StringBuffer ist synchronisiert.

Empfohlen: