Java, реализация toString(): что лучше конкатенация или StringBuilder?

Как предпочтительнее реализовывать метод toString()? используя конкатенацию или StringBuilder?
Ниже приведён 2 варианта реализации toString() если в классе только три свойства.

1 вариант:

public String toString(){
    return "{a:"+ a + ", b:" + b + ", c: " + c +"}";
}

2 вариант:

public String toString(){
    StringBuilder sb = new StringBuilder(100);
    return sb.append("{a:").append(a)
          .append(", b:").append(b)
          .append(", c:").append(c)
          .append("}")
          .toString();
}

Что еще более важно, но в какой момент вы могли бы перейти от конкатенации к использованию StringBuilder (или наоборот)?

Как по мне, то в таких ситуациях лучше использовать конкатенацию нежели StringBuilder.

Если бы происходило накапливание нескольких конкатенаций в разных местах или же в цикле, тогда я бы использовал StringBuilder. А если же всё делается в одной строке, тогда обычную конкатенацию.

1 Вподобання

Поддерживаю!!!

Спасибо!