Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 16249|Antwort: 0

[Tipps] Essenziell für den effizienten Lauf von Java: StringBuffer ist effizienter als String

[Link kopieren]
Veröffentlicht am 06.11.2014 10:58:08 | | | |

String ist die wahrscheinlichste Variable, die in der Java-Programmierung verwendet wird, vielleicht denken Sie, es gibt nichts zu sagen, nehmen Sie sie einfach auf, aber die Verarbeitung von Strings erfordert besonders unsere Aufmerksamkeit, weil die zufällige Erstellung einer großen Anzahl von String-Instanzen große Probleme für die Effizienz des Systems mit sich bringt.

Zum Beispiel machen wir einen Test, um die Ausführungseffizienz der String-Klasse und des StringBuffers zu vergleichen:

Unser Lehrer sagte: Jedes Mal, wenn String hinzugefügt wird, wird immer wieder Speicherplatz aus dem Gedächtnis angefordert, was sehr ineffizient ist

                     Jedes Mal, wenn StringBuffer hinzugefügt wird, muss man keinen Speicherplatz auf einmal aus dem Speicher anfordern, da StringBuffer von Anfang an viel Speicherplatz anfordert, was sehr effizient ist.



  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 kopieren






Vorhergehend:2007 Office System Kompatibilitätspaket Download
Nächster:Wir sprechen über Softwarekompatibilitätstests
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com