Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 16249|Respuesta: 0

[Consejos] Esencial para que Java funcione de forma eficiente: StringBuffer es más eficiente que String

[Copiar enlace]
Publicado en 6/11/2014 10:58:08 | | | |

La cadena es la variable más probable usada en la programación en Java, quizá pienses que no hay nada que decir, simplemente cógela, pero el procesamiento de cadenas especialmente requiere nuestra atención, porque la creación aleatoria de un gran número de instancias de cadenas trae grandes problemas a la eficiencia del sistema.

Por ejemplo, hagamos una prueba para comparar la eficiencia de ejecución de la clase String y StringBuffer:

Nuestro profesor dijo: Cada vez que se añade una cuerda, solicitará espacio de memoria una y otra vez, lo cual es muy ineficiente

                     Cada vez que se añade StringBuffer, no es necesario solicitar espacio de memoria de una vez, porque StringBuffer solicita mucho espacio de memoria desde el principio, por lo que es muy 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:Descarga del Paquete de Compatibilidad de Sistemas de Office 2007
Próximo:Hablando de pruebas de compatibilidad de software
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com