Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 16249|Răspunde: 0

[Bacșișuri] Esențial pentru ca Java să ruleze eficient: StringBuffer este mai eficient decât String

[Copiază linkul]
Postat pe 06.11.2014 10:58:08 | | | |

Stringul este cea mai probabilă variabilă folosită în programarea Java, poate crezi că nu ai nimic de spus, doar preia-l, dar procesarea șirurilor necesită în special atenția noastră, deoarece crearea aleatorie a unui număr mare de instanțe de șiruri aduce mari probleme eficienței sistemului.

De exemplu, să facem un test pentru a compara eficiența execuției clasei String și a StringBuffer:

Profesorul nostru a spus: De fiecare dată când se adaugă String, va cere spațiu din memorie iar și iar, ceea ce este foarte ineficient

                     De fiecare dată când se adaugă StringBuffer, nu este nevoie să se solicite spațiu din memorie simultan, deoarece StringBuffer solicită mult spațiu de memorie de la început, deci este foarte eficient.



  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. }
Cod de copiere






Precedent:Descărcare Pachetului de Compatibilitate pentru Sistemul Office 2007
Următor:Vorbind despre testarea compatibilității software
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com