Limpar StringBuilder

3 respostas
L

Estou usando o StringBuilder em várias partes do código, só que não encontrei nenhum método para limpar todos os valores. Alguém poderia me ajudar?

3 Respostas

T

Veja se isto lhe ajuda:

package br.com.rlsystem.app; 
public class Exemplo{
 
   public static void main (String args[]) {
 
	   StringBuilder sb = new StringBuilder();
	   sb.append("RL System");
	   sb.append("Treinamentos");
 
	   //Limpar StringBuilder
	   sb.delete(0, sb.length());
 
 
	   System.out.println(sb.toString());	   
 
   }
}

ou

package br.com.rlsystem.app; 
public class Exemplo{
 
   public static void main (String args[]) {
 
	   StringBuilder sb = new StringBuilder();
	   sb.append("RL System");
	   sb.append("Treinamentos");
 
	   //Limpar StringBuilder
	   sb.setLength(0);  
 
	   System.out.println(sb.toString());	   
 
   }
}

Fonte: http://www.rlsystem.com.br/limpar-stringbuilder-no-java/

davidbuzatto
Instancie novamente.
StringBuilder sb = new StringBuilder();
sb.append("foo");
sb.append("bar");

sb = new StringBuilder();
Intuitivamente me parece que é muito mais rápido instanciar de novo do que executar uma operação no objeto (que já pode estar bem "cheio").

[]'s

utluiz

Usar o método “setLength(0)” ou mesmo o delete(0, length) é mais rápido segundo estes links:


http://www.coderanch.com/t/201650/Performance/java/StringBuffer-reintialization

Entretanto, este outro link diz que pode introduzir problemas de performance porque será necessário realocar memória a todo momento:
http://www.jutils.com/checks/performance.html

Criado 1 de outubro de 2012
Ultima resposta 1 de out. de 2012
Respostas 3
Participantes 4