Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 16249|Odgovoriti: 0

[Napitnine] Ključno za učinkovito delovanje Jave: StringBuffer je učinkovitejši od String

[Kopiraj povezavo]
Objavljeno na 6. 11. 2014 10:58:08 | | | |

String je najbolj verjetna spremenljivka, ki se uporablja v Java programiranju, morda mislite, da ni ničesar za povedati, samo vzemite jo, a obdelava nizov še posebej zahteva našo pozornost, saj naključno ustvarjanje velikega števila instanc stringov prinaša velike težave za učinkovitost sistema.

Na primer, naredimo test za primerjavo učinkovitosti izvajanja razreda String in StringBuffer:

Naš učitelj je rekel: Vsakič, ko dodamo String, bo znova in znova zahteval prostor iz pomnilnika, kar je zelo neučinkovito

                     Vsakič, ko se doda StringBuffer, ni potrebe po takojšnji zahtevi prostora iz pomnilnika, saj StringBuffer zahteva veliko pomnilniškega prostora že od začetka, zato je zelo učinkovit.



  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. }
Kopiraj kodo






Prejšnji:Prenos paketa za združljivost Office System Pack 2007
Naslednji:Govorimo o testiranju združljivosti programske opreme
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com