Если под «лучшим» вы подразумеваете «наиболее эффективную память и / или время выполнения», то вам, вероятно, лучше всего с StringBuilder
, который вы предварительно выделяете.(Посмотрев на реализацию String.join
в JDK, он использует StringJoiner
, который использует StringBuilder
с начальной емкостью по умолчанию [16 символов] без попытки избежать перераспределения и копирования.)
Вы суммируете длины своих 84 строк, добавляете количество запятых, создаете StringBuilder
с этой длиной, добавляете их все и вызываете toString
на нем.Например:
int length = 0;
for (int i = 0; i < strings.length; ++i) {
length += strings[i].length();
}
length += strings.length - 1; // For the commas
StringBuilder sb = new StringBuilder(length);
sb.append(strings[0]);
for (int i = 1; i < strings.length; ++i) {
sb.append(',');
sb.append(strings[i]);
}
String result = sb.toString();