Isso é “concatenação de strings”, e é uma prática ruim: … Alguns podem dizer que é lento, principalmente porque partes da string resultante são copiadas várias vezes De fato, em cada operador +, a classe String aloca um novo bloco na memória e copia tudo o que tem nele; mais um sufixo sendo concatenado.
A concatenação de strings é ineficiente?
A concatenação não é tão ineficiente, porque os compiladores modernos a substituem por uma implementação eficiente baseada em StringBuilder (você verá se observar o bytecode do arquivo de classe).
Por que a concatenação de strings é cara?
Tem sido caro. Vamos primeiro cavar a questão de por que é caro. Em Java, objetos string são imutáveis, o que significa que, uma vez criado, você não pode alterá-lo. Então, quando concatenamos uma string com outra, uma nova string é criada, e a mais antiga é marcada para o coletor de lixo.
Quais são os perigos de usar concatenação de strings em uma consulta SQL?
1 Resposta
- Desempenho: Ao usar uma instrução preparada, a sintaxe da consulta deve ser analisada apenas uma vez e o caminho de acesso deve ser calculado apenas uma vez para cada tipo de consulta distinto. …
- Segurança: Usar concatenação de strings com dados fornecidos pelo usuário é sempre propenso a ataques de injeção de SQL.
A concatenação de strings é lenta em Python?
Este comportamento não deve surpreendê-lo: os objetos string do Python são imutáveis, então cada concatenação gera uma nova string ao invés de modificar a existente. Também não é surpresa que concatenações de várias strings sejam consideradas lentas.