Als ich Java früher benutzte, wusste ich, dass es eine Klasse namens StringBuffer für String mit längerem Nähen gab. Nach C#gibt es auch eine Art von Funktion namens StringBuilder.
Später, als ich nach Java zurückging, stellte ich fest, dass Java auch Stringbuilder hatte, also war ich neugierig, warum ich StringBuilder nach Stringbuffer gestartet habe.
Es stellt sich heraus, dass der StringBuilder von Java (das gleiche wie C#) nicht -thread -Sicherheit ist und der frühere StringBuffer über ein bestimmtes Thread -Sicherheitsattribut verfügt. Natürlich liegt der Start von StringBuilder hauptsächlich daran, dass er nicht in mehreren Threads verwendet werden muss.
Der gemeinsame Fall von StringBuilder (oder StringBuffer) ist ::
Public String toString () {return New StringBuilder () .Appnd ("Name:" + Name) .Appnd ("foo:" + foo) .Appnd ("bar:" + bar) .tring ();}
In diesem Fall ist StringBuilder kein Klassenmitglied.
Infolgedessen brachte die Einführung von StringBuilder eine großartige Leistungsverbesserung, und es gab kein Sicherheitsproblem ...