コレクションをループして各データを区切り文字で区切った文字列を作成する場合、最後に必ず余分な区切り文字が付きます。例:
for (String serverId : serverIds) {
sb.append(serverId);
sb.append(",");
}
次のようなものが表示されます: serverId_1、serverId_2、serverId_3、
StringBuilder の最後の文字を削除したいと思います (このループの後も必要なので変換はしません)。
ベストアンサー1
他の人もこの方法を指摘していますdeleteCharAt
が、別の代替アプローチがあります。
String prefix = "";
for (String serverId : serverIds) {
sb.append(prefix);
prefix = ",";
sb.append(serverId);
}
Java 8では、StringJoiner
標準 JRE の一部です。