Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 16249|Yanıt: 0

[İpucu] Java'nın verimli çalışması için vazgeçilmedik: StringBuffer, String'den daha verimlidir

[Bağlantıyı kopyala]
Yayınlandı 6.11.2014 10:58:08 | | | |

Java programlamada kullanılan en olası değişken dize olabilir, belki söyleyecek bir şey olmadığını düşünüyorsunuz, sadece alabilirsiniz, ama dizide işleme özellikle dikkat gerektirir, çünkü çok sayıda dizi örneğinin rastgele oluşturulması sistemin verimliliğine büyük sorunlar getirir.

Örneğin, String sınıfı ile StringBuffer'ın yürütme verimliliğini karşılaştırmak için bir test yapalım:

Öğretmenimiz şöyle dedi: Her String eklendiğinde, tekrar tekrar hafızadan alan talep edecek, ki bu çok verimsiz

                     StringBuffer her eklendiğinde, bir anda bellekten alan talep etmeye gerek yoktur, çünkü StringBuffer baştan çok fazla bellek alanı talep eder, bu yüzden çok verimlidir.



  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. }
Kopya kodu






Önceki:2007 Office System Uyumluluk Paketi İndir
Önümüzdeki:Yazılım uyumluluk testinden bahsediyorum
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com