Níže uvedený kód předpokládá, že máme definováno následující pole: String[] arr = {"a", "b", "c", "d"}.
Použití StringBuilderu.
StringBuilder sb = new StringBuilder();
for (int i = 0; i < arr.length; i++) {
sb.append(arr[i]);
if (i < arr.length - 1) {
sb.append(", ");
}
}
System.out.println(sb.toString());
Variace na předchozí způsob.
StringBuilder sbb = new StringBuilder();
for (int i = 0; i < arr.length; i++) {
if (i > 0) {
sbb.append(", ");
}
sbb.append(arr[i]);
}
System.out.println(sbb.toString());
Použití StringUtils (vnitřně používá StringBuilder).
String result = StringUtils.join(arr, ", "); System.out.println(result);
Do projektu je třeba přidat závislost.
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> </dependency>
A trochu divoký způsob pomocí třídy Arrays a regulárních výrazů.
String string = Arrays.toString(arr);
String regex = Pattern.quote("[") + "|" + Pattern.quote("]");
String string2 = string.replaceAll(regex, "");
System.out.println(string2);
Převede pole na řetězec (ten obsahuje [] a jednotlivé stringy oddělené čárkou). Následně provede odstranění hranatých závorek. Pattern.quote() provádí správně odescapování daného znaku či sekvence znaků.