Нет, но вы всегда можете создать метод, чтобы сделать это:
public String surround(String str, String surroundingStr) {
StringBuffer buffer = new StringBuffer();
buffer.append(surroundingStr).append(str).append(surroundingStr);
return buffer.toString();
}
У вас есть еще один способ сделать это, но Не делайте этого, если вы хотите повысить производительность: -
public String surround(String str, String surroundingStr){
return surroundingStr + str + surroundingStr;
}
Почему бы не использовать второй метод?
Как мы все знаем, строки в Java неизменяемы. Когда вы объединяете строки трижды, они создают два новых строковых объекта помимо ваших исходных строк str
и surroundingStr
. И поэтому создано всего 4 строковых объекта:
1. str
2. surroundingStr
3. surroundingStr + str
4. (surroundingStr + str) + surroundingStr
И для создания объектов требуется время. Поэтому для долгосрочного использования второй метод понизит вашу производительность с точки зрения пространства и времени. Так что это ваш выбор, какой метод следует использовать.
Хотя это не тот случай после того, как Java 1.4
как concatinating строки с оператором +
использует StringBuffer
в фоновом режиме. Поэтому использование второго метода не является проблемой, если ваша версия Java 1.4 или выше. Но все же, если вы хотите, чтобы конкатенировать строки, это цикл, будьте осторожны.
Мое предложение:
Либо использовать StringBuffer
из StringBuilder
.
Я не знаю такого метода, но это одна реализация линии, так что вряд ли трудно писать себя ... –
Я согласен, но все-таки это реализация, которая добавляет мой пользовательский код в систему. Мне нужно это на большем количестве мест, поэтому мне нужен некоторый класс util, который должен быть протестирован, есть вероятность ошибки и т. Д.Поэтому я ищу существующее решение. – Michal
Это единственная строка. Это легко проверить. Как я уже сказал, я не думаю, что такой метод существует в Java (это не то, что обычно нужно делать). –