Просто получите позицию последнего появления персонажа.
for(String serverId : serverIds) {
sb.append(serverId);
sb.append(",");
}
sb.deleteCharAt(sb.lastIndexOf(","));
Поскольку lastIndexOf
обратный поиск будет выполнен, и вы знаете, что он будет найден с первой попытки, производительность здесь не будет проблемой.
РЕДАКТИРОВАТЬ
Так как я продолжаю поднимать свой ответ (спасибо, ребята 😊), стоит учитывать следующее:
На Java 8 вперед это только будет более четким и ясным , чтобы использовать StringJoiner . У него есть один метод для простого разделителя и перегрузка для префикса и суффикса.
Примеры взяты отсюда: пример
Пример использования простого разделителя:
StringJoiner mystring = new StringJoiner("-");
// Joining multiple strings by using add() method
mystring.add("Logan");
mystring.add("Magneto");
mystring.add("Rogue");
mystring.add("Storm");
System.out.println(mystring);
Вывод:
Логан-магнито-Разбойник-Буря
Пример с суффиксом и префиксом:
StringJoiner mystring = new StringJoiner(",", "(", ")");
// Joining multiple strings by using add() method
mystring.add("Negan");
mystring.add("Rick");
mystring.add("Maggie");
mystring.add("Daryl");
System.out.println(mystring);
Вывод
(Negan, Рик, Мэгги, Дэрил)