Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 16249|Antwoord: 0

[Tips] Essentieel voor Java om efficiënt te draaien: StringBuffer is efficiënter dan String

[Link kopiëren]
Geplaatst op 06-11-2014 10:58:08 | | | |

String is de meest waarschijnlijke variabele die wordt gebruikt in Java-programmering, misschien denk je dat er niets te zeggen valt, pak het gewoon op, maar vooral de verwerking van strings vereist onze aandacht, omdat het willekeurig creëren van een groot aantal string-instanties grote problemen met zich meebrengt voor de efficiëntie van het systeem.

Laten we bijvoorbeeld een test doen om de uitvoeringsefficiëntie van de String-klasse en StringBuffer te vergelijken:

Onze docent zei: Elke keer dat String wordt toegevoegd, vraagt het keer op keer ruimte uit het geheugen, wat erg inefficiënt is

                     Elke keer dat StringBuffer wordt toegevoegd, is het niet nodig om in één keer ruimte uit het geheugen op te vragen, omdat StringBuffer vanaf het begin veel geheugenruimte opvraagt, dus het is erg efficiënt.



  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. }
Code kopiëren






Vorig:2007 Office System Compatibiliteitspakket Download
Volgend:Over softwarecompatibiliteitstesten
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com