11 Aralık 2018 Salı

StringBuffer Sınıfı

Giriş
Bu sınıfın kardeşi olan StringBuilder sınıfı thread safe değildir.

Bu sınıf thread safe olarak kullanılabilir. Açıklaması şöyle
String buffers are safe for use by multiple threads. The methods are synchronized where necessary so that all the operations on any particular instance behave as if they occur in some serial order that is consistent with the order of the method calls made by each of the individual threads involved.
constructor
Kodu şöyledir.
public StringBuffer() {
  super(16);
}
16 karakterlik yer ayırır.
AbstractStringBuilder(int capacity) {
  value = new char[capacity];
}
capacity metodu
Şöyle yaparız.
StringBuffer sb = new StringBuffer();  
System.out.println (sb.capacity());//default 16  
equals metodu
İçeriği karşılaştırmaz. İki tane StringBuffer nesnesini == şeklinde karşılaştırır. Kodu şöyledir.
public boolean equals(Object obj) {
  return (this == obj);
}
Dolayısıyla şu kod false döner.
StringBuffer x=new StringBuffer("Hey");
StringBuffer y=new StringBuffer("Hey");
System.out.println(x.equals(y));    //false
repeat metodu
Java 21 ile geliyor. İmzası şöyle
StringBuffer repeat(CharSequence cs,
                    int count)
StringBuffer repeat(int codePoint,
                    int count)
reverse metodu

String'i tersine çevirir. Örnek ver

Hiç yorum yok:

Yorum Gönder