У меня есть случай, когда мне нужно создать URL-адрес с ключом в конце URL-адреса. Мне нужно изменить URL, изменив разные ключи.
Я использую StringBuilder
как ниже бесполезно, поскольку я преобразовываю его обратно в string
//the below line loops for a number of times with strKey changing each time
url = new URL(strUrl.append(strKey).toString());
В вашем примере и для всех современных JDK (Java 1. 5+) он использует StringBuilder
для нормального добавления строки.
url = new URL(strUrl.append(strKey).toString()); // There is nothing wrong with this.
Но он (функционально) идентичен
url = new URL(strUrl + strKey);
До Java 1.5 использовался StringBuffer
.
strUrl
, это подразумевает повторное использование. Так что функционально не то же самое, и более эффективно использовать StringBuilder
чем конкатенацию. Но в вопросе недостаточно информации, чтобы быть уверенным.
Это. Просто конкатенирование строк здесь, скорее всего, происходит быстрее (поскольку вы только копируете данные один раз) и более четкими.
strUrl + strKey
, компилятор Java создаст для вас строители строк.strUrl
StringBuilder
, неоднократно добавляя к нему, так что нет, не кажется , бессмысленно. Если вы используете конкатенацию строк,StringBuilders
будет создаваться и выбрасываться каждый раз.