Когда я использовал Java ранее, я знал, что был класс под названием StringBuffer для строки с более длинной строчкой. Повернувшись к C#, существует также тип функции, называемого StringBuilder.
Позже, когда я перешел на Java, я обнаружил, что у Java также есть StringBuilder, поэтому мне было любопытно, почему я запустил StringBuilder после StringBuffer.
Оказывается, что stringbuilder Java (так же, как C#), является нечищенной безопасностью, а более ранний StringBuffer имеет определенный атрибут безопасности потока. Конечно, запуск StringBuilder в основном потому, что его не нужно использовать в нескольких потоках.
Общий случай StringBuilder (или StringBuffer) ::
Public String toString () {return new StringBuilder () .Appnd ("name:" + name) .appnd ("foo:" + foo) .appnd ("bar:" + bar) .tring ();}
В этом случае StringBuilder не является членом класса.
В результате введение StringBuilder принесло большое улучшение производительности, и не было никакой проблемы с безопасностью ...