String vs StringBuilder | Ümit KÖSE
Bu dersimizde String ve StringBuilder’ın farkını göreceğiz.
Java’da String ve StringBuffer/StringBuilder arasındaki en önemli fark : String objesi değiştirilemezken StringBuffer/StringBuilder objelerinin değiştirilebilir olmasıdır.
Herşeye String kullanan birimisinizdir ? Cevabı evet ise burada düzeltmeniz gereken şeyler vardır.
String test1= test1 +  ".com";
Yukarda örnek 2 tane String objesi yaptık. Bir değişkene eklemeler için kullandık. Performansı konusunda bir düşünceniz var mı ? Yada çok iyi bir kod mu oldu ?
Bu sorular için alta bir de şu kodu ekleyeyim.
StringBuilder test=new StringBuilder("umiitkose");
Son bir örnek ise
Yukardaki gibi. Ya neler oluyor ? Sonuçları aynı ama ?
Evet doğru haklısınız sonuç her zaman aynı gelin şimdi ne olduğuna bakalım.
String sınıfları immutable StringBuffer/StringBuilder ise mutable olduğunu yukarda dedik.(String = Değiştirilemez, StringBuffer||StringBuilder=Değiştirilebilir)
String objenin içine saklanan değer değiştirilemez. Peki nasıl oluyor da ben istediğim zaman string bir değişkeni değiştirebiliyorum diye sorabilirsiniz. Sizin görmüş olduğunuz nesene aynı nesne değildir. String objesi değişmek için arka planda yeni bir String nesnesi oluşturur. Her değişikilte yeni bir String class’ı oluşuyor. Bu da zamanla performansı kötü yönde etkiliyor.
StringBuffer/StringBuilder objelerini kullanırsanız performans açısından daha iyi sonuçlar elde edersiniz. Çünkü Objenin içinde saklanan değer değiştirilebilir bir değerdir.
StringBuffer ile StringBuilder arasında ki tek fark ise “senkronizasyon”dur.
StringBuffer “synchronized” iken StringBuilder “synchronized” değildir.
Thread kullancaksanız; StringBuffer, kullanmayacaksanız StringBuilder kullanmanız daha verimli olcaktır.
Yani siz yukardaki örnekte 3 kere String objesini memory’de oluşturmak mı istersiniz yoksa StringBuilder/StringBuffer ile bu işi 1 kerede çözmek mi istersiniz ?
İngilizce : https://www.javatpoint.com/difference-between-stringbuffer-and-stringbuilder
İngilizce : http://net-informations.com/q/faq/builder.html
Türkçe : https://wxtp.wordpress.com/2012/08/25/java-stringbuilder/
Kategoriler: Genel / Yorum yapılmamış / Yazar: umiitkose 1 Aralık 2017
Merhaba Arkadaşlar, Bu dersimizde splash Screen 'i göreceğiz. Splash Screen uygulamamız açılmadan bir kaç sn öncesinde ekranda...
Merhabalar, Bu blog yazımızda Blokzincir - Blockchain Teknolojilerinin ne olduğunu ve kullanım alanlarını göreceğiz....
Merhabalar, umiitkose.com 'da bu ay 15 yeni yazı yayınlanmış olup, 5.747 kişi siteme ziyaret etmiş ve 10.570 sayfa...
Merhabalar, Bugünki yazımızda Navigation Bottom Bar 'ı inceleyeceğiz. Öncelikle nedir ? diye soracak olursanız aşağıdaki...
Merhaba Arkadaşlar, Bu dersimizde kotlin ile Android için bir custom Alert Dialog yazacağız. Şimdi Alert Dialog ekranda bir...