Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 16249|Odpowiedź: 0

[Napiwki] Niezbędne dla efektywnego działania Javy: StringBuffer jest bardziej wydajny niż String

[Skopiuj link]
Opublikowano 06.11.2014 10:58:08 | | | |

String to najbardziej prawdopodobna zmienna używana w programowaniu Java, może myślisz, że nie ma o czym mówić, po prostu to podnieś, ale przetwarzanie stringów wymaga naszej szczególnej uwagi, ponieważ losowe tworzenie dużej liczby instancji stringów stwarza poważne problemy z efektywnością systemu.

Na przykład, zróbmy test porównający efektywność wykonania klasy String i StringBuffer:

Nasz nauczyciel powiedział: Za każdym razem, gdy dodaje się String, powtarza się żądanie przestrzeni z pamięci, co jest bardzo nieefektywne

                     Za każdym razem, gdy dodaje się StringBuffer, nie ma potrzeby żądania przestrzeni z pamięci od razu, ponieważ StringBuffer od początku wymaga dużej ilości przestrzeni w pamięci, więc jest bardzo wydajny.



  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. }
Skopiuj kod






Poprzedni:Pakiet zgodności systemu Office 2007 Pobierz
Następny:Mówimy o testowaniu zgodności oprogramowania
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com