Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 16249|Resposta: 0

[Gorjetas] Essencial para o Java rodar eficientemente: o StringBuffer é mais eficiente que o String

[Copiar link]
Publicado em 06/11/2014 10:58:08 | | | |

String é a variável mais provável usada na programação em Java, talvez você ache que não há nada a dizer, apenas pegue-a, mas o processamento de strings especialmente precisa da nossa atenção, porque a criação aleatória de um grande número de instâncias de strings traz grandes problemas para a eficiência do sistema.

Por exemplo, vamos fazer um teste para comparar a eficiência de execução da classe String e do StringBuffer:

Nosso professor disse: Toda vez que uma corda é adicionada, ela vai pedir espaço da memória repetidas vezes, o que é muito ineficiente

                     Toda vez que o StringBuffer é adicionado, não há necessidade de solicitar espaço da memória de uma vez, porque o StringBuffer solicita muito espaço de memória desde o início, tornando-se muito eficiente.



  1. import java.util.Date;






  2. public class test {

  3.         /**
  4.          * @param args
  5.          */
  6.         public static void main(String[] args) {
  7.                 // 武软论坛 www.itsvse.com
  8.                 Date da=new Date();
  9.                 System.out.println(da.toLocaleString());
  10.                 System.out.println("系统时间");
  11.                
  12.                 String str1="1";
  13.                 for(int i=1;i<100000;i++){
  14.                         str1=str1+"1";
  15.                 }
  16.                 da=new Date();
  17.                 System.out.println(da.toLocaleString());
  18.                 System.out.println("String运行完时间");
  19.                
  20.                 StringBuffer str2=new StringBuffer(1000);
  21.                
  22.                 for(int i=1;i<100000;i++){
  23.                         str2.append("1");
  24.                 }
  25.                 da=new Date();
  26.                 System.out.println(da.toLocaleString());
  27.                 System.out.println("StringBuffer运行完时间");
  28.                
  29.         }

  30. }
Copiar código






Anterior:Download do Pacote de Compatibilidade do Sistema Office 2007
Próximo:Falando sobre testes de compatibilidade de software
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com