Bu örnekte, delete () ve setLength () yöntemini kullanarak dize arabelleğini temizlemeyi ve Java'da yeni bir StringBuffer nesnesi oluşturmayı öğreneceğiz.
Örnek 1: delete () kullanarak StringBuffer kullanarak temizlemek için Java programı
class Main ( public static void main(String() args) ( // create a string buffer StringBuffer str = new StringBuffer(); // add string to string buffer str.append("Java"); str.append(" is"); str.append(" popular."); System.out.println("StringBuffer: " + str); // clear the string // using delete() str.delete(0, str.length()); System.out.println("Updated StringBuffer: " + str); ) )
Çıktı
StringBuffer: Java popülerdir. Güncellenmiş StringBuffer:
Yukarıdaki örnekte, dizge tamponunu temizlemek için sınıfın delete()
yöntemini kullandık StringBuffer
.
Burada delete()
yöntem, belirtilen dizin numaraları içindeki tüm karakterleri kaldırır.
Örnek 2: setLength () kullanarak StringBuffer'ı temizleyin
class Main ( public static void main(String() args) ( // create a string buffer StringBuffer str = new StringBuffer(); // add string to string buffer str.append("Java"); str.append(" is"); str.append(" awesome."); System.out.println("StringBuffer: " + str); // clear the string // using setLength() str.setLength(0); System.out.println("Updated StringBuffer: " + str); ) )
Çıktı
StringBuffer: Java harika. StringBuffer güncellendi
Burada setLength()
yöntem, mevcut StringBuffer
karakter dizilerini yeni bir karakter dizisine değiştirir. Ve yeni karakter dizisinin uzunluğunu 0 olarak ayarlayın.
Bu nedenle, eski karakter dizisi çöp olarak toplanmıştır.
Not : setLength()
Yöntem, dize arabelleğinde bulunan karakter dizisini tamamen yok sayar. Ancak delete()
yöntem, karakter dizisine erişir ve onu siler. Bu nedenle, setLength()
daha hızlıdır delete()
.
Örnek 3: Yeni bir nesne oluşturarak StringBuffer'ı temizleyin
class Main ( public static void main(String() args) ( // create a string buffer StringBuffer str = new StringBuffer(); // add string to string buffer str.append("Java"); str.append(" is"); str.append(" awesome."); System.out.println("StringBuffer: " + str); // clear the string // using new // here new object is created and assigned to str str = new StringBuffer(); System.out.println("Updated StringBuffer: " + str); ) )
Çıktı
StringBuffer: Java harika. Güncellenmiş StringBuffer:
Burada new StringBuffer()
yeni bir string tampon nesnesi oluşturur ve önceki değişkeni yeni nesnelere atar. Bu durumda, önceki nesne orada olacaktır. Ancak erişilebilir olmayacağı için çöp toplanacak.
Her seferinde önceki dizge tamponunu temizlemek yerine yeni bir dizgi tamponu oluşturulur. Dolayısıyla performans açısından daha az verimlidir.