String e StringBuilder são frequentemente usados em projetos. String pode ser emendado com "+" e StringBuilder pode ser emendado com acréscimo. Nunca entendi por que deveria usar StringBuilder, pois posso usar String. Embora eu normalmente use o StringBuilder para unir instruções de consulta ao fazer consultas ao banco de dados, ainda não sei o motivo. Quando assisti ao vídeo hoje, vi o StringBuffer novamente e senti que o uso era semelhante, então verifiquei as diferenças entre essas coisas.
Está resumido da seguinte forma:
1. Comparação em termos de velocidade de execução: StringBuilder > StringBuffer
2. StringBuffer e StringBuilder, são variáveis de string e objetos mutáveis. Sempre que os usamos para operar em strings, estamos na verdade operando em um objeto. Não é como criar alguns objetos para operar como String.
3.StringBuilder: thread inseguro
StringBuffer: thread-safe
Quando nosso buffer de string é usado por vários threads, a JVM não pode garantir que a operação do StringBuilder seja segura. Embora seja o mais rápido, pode garantir que o StringBuffer possa operar corretamente. Claro que na maioria dos casos realizamos operações em uma única thread, então na maioria dos casos é recomendado usar StringBuilder em vez de StringBuffer por questões de velocidade.
Resumo do uso dos três:
1. Se você deseja operar uma pequena quantidade de dados, use String
2. Operação de thread único do buffer de string para operar uma grande quantidade de dados StringBuilder
3. Operação multithread do buffer de string para operar uma grande quantidade de dados StringBuffer