Я знаю, что на этот вопрос много раз отвечали на многих сайтах много лет назад. Тем не менее, у меня есть некоторые сомнения, поэтому я подумал о том, чтобы опубликовать это. Основное различие в том, что String неизменяем, и каждый раз, когда мы выполняем какую-либо операцию над String, он создает новый объект String.
Ex:-
String str = "some";
str = str + " text"
В приведенном выше случае создаются две новые строки вместо изменения существующей строки, чего можно избежать с помощью StringBuffer.
Ex:-
StringBuffer str = new StringBuffer();
str.append("try");
str.append("this");
Мой вопрос здесь в том, чтобы добавить метод, мы снова передаем String. Не создавайте ли новые объекты String для "try" и "this" в пуле строк в приведенном выше случае.