Sobes.tech
Junior — Middle

Quais são as diferenças entre as classes String e StringBuilder em Java e em que casos é preferível usar cada uma delas?

sobes.tech IA

Resposta da IA

Em Java, a classe String representa uma cadeia de caracteres imutável. Cada vez que a cadeia é modificada, um novo objeto é criado, o que pode ser ineficiente em operações de concatenação múltiplas.

StringBuilder é um buffer de caracteres mutável que permite modificar a cadeia de forma eficiente sem criar novos objetos.

Quando usar:

  • String — quando a cadeia não muda após a criação ou as mudanças são mínimas.
  • StringBuilder — para mudanças frequentes na cadeia, por exemplo, em loops, ao construir grandes cadeias.

Exemplo:

StringBuilder sb = new StringBuilder();
for (int i = 0; i < 10; i++) {
    sb.append(i).append(", ");
}
String result = sb.toString();