Rumah >Java >javaTutorial >Di Jawa, bagaimana kita membandingkan StringBuilder dan StringBuffer?

Di Jawa, bagaimana kita membandingkan StringBuilder dan StringBuffer?

王林
王林ke hadapan
2023-08-28 15:57:061136semak imbas

Objek

Di Jawa, bagaimana kita membandingkan StringBuilder dan StringBuffer?

StringBuffer secara amnya selamat digunakan dalam persekitaran berbilang benang, di mana berbilang benang mungkin cuba mengakses objek StringBuffer yang sama pada masa yang sama. StringBuilder ialah pengganti selamat benang untuk kelas StringBuffer, yang berfungsi lebih pantas kerana ia tidak mempunyai kaedah disegerakkan>. Jika kita melakukan banyak operasi rentetan dalam satu utas, menggunakan kelas ini boleh meningkatkan prestasi.

Contoh

public class CompareBuilderwithBufferTest {
   public static void main(String []args) {
<strong>     </strong> stringBufferTest();
      stringBuilderTest();<strong>
</strong>   }
   public static void stringBufferTest() {
      long startTime = System.nanoTime();
      StringBuffer sb = new StringBuffer();
      for (int i=0; i < 1000; i++) {
         sb.append((char) &#39;a&#39;);
      }
      System.out.println("StringBuffer test: " + (System.nanoTime() - startTime));
   }
   public static void stringBuilderTest()<strong> </strong>{
      long startTime = System.nanoTime();
      StringBuilder sb = new StringBuilder();
      for (int i=0; i < 1000; i++) {
         sb.append((char) &#39;a&#39;);
      }
      System.out.println("StringBuilder test: " + (System.nanoTime() - startTime));
   }
}

Output

StringBuffer test: 192595
StringBuilder test: 85733

Atas ialah kandungan terperinci Di Jawa, bagaimana kita membandingkan StringBuilder dan StringBuffer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam