String
объекты неизменны. Вызов concat
для toList
не изменит значение объекта toList
. Вместо этого concat
вернет другой объект String
, который является объединением двух строк. Например, вы захотите сохранить результат каждого из вызовов concat
в переменной toList
.
Например,
toList = toList.concat(cusEmail[i]);
Альтернативой использованию метода concat
может быть использование оператора конкатенации. Это может быть немного лучше читать.
toList = toList + cusEmail[i];
Обратите внимание, однако, что каждый раз, когда одна строка соединяется с другой строкой, необходимо создать новый объект String
, который содержит копии информации в двух исходных строках. Это может быть дорогостоящим способом построения строки, когда это делается снова и снова в цикле, например, что у вас есть. Это верно, используете ли вы метод concat
или оператор конкатенации. Альтернативой является использование объекта StringBuilder
для построения вашей строки.
StringBuilder toList = new StringBuilder();
for(i=0; i < cusEmail.length - 1; i++) {
toList.append(cusEmail[i]);
toList.append("; ");
System.out.println(cusEmail[i]);
}
toList.append(cusEmail[i]);
System.out.println(toList.toString());