Java StringBuffer sınıfı, değiştirilebilir (değiştirilebilir) String nesneleri oluşturmak için kullanılır. Java'daki StringBuffer sınıfı, değişken olması yani değiştirilebilir olması dışında String sınıfıyla aynıdır.
Not: Java StringBuffer sınıfı iş parçacığı açısından güvenlidir, yani birden fazla iş parçacığı aynı anda ona erişemez. Yani güvenlidir ve bir düzen ile sonuçlanacaktır.
StringBuffer Sınıfının Önemli Yapıcıları
Oluşturucu | Tanım |
---|---|
StringBuffer() | Başlangıç kapasitesi 16 olan boş bir String arabelleği oluşturur. |
StringBuffer(Dize dizisi) | Belirtilen dizeyle bir Dize arabelleği oluşturur. |
StringBuffer(int kapasite) | Uzunluk olarak belirtilen kapasiteye sahip boş bir String arabelleği oluşturur. |
StringBuffer sınıfının önemli yöntemleri
Değiştirici ve Tür | Yöntem | Tanım |
---|---|---|
genel senkronize StringBuffer | add(String s) | Belirtilen stringi bu stringe eklemek için kullanılır. Append() yöntemi, Append(char), Append(Boolean), Append(int), Append(float), Append(double) vb. gibi aşırı yüklenmiştir. |
genel senkronize StringBuffer | insert(int ofset, String s) | Belirtilen dizeyi bu dizeyle belirtilen konuma eklemek için kullanılır. Insert() yöntemi, insert(int, char), insert(int, boolean), insert(int, int), insert(int, float), insert(int, double) vb. gibi aşırı yüklenmiştir. |
genel senkronize StringBuffer | değiştir(int startIndex, int endIndex, String str) | Belirtilen startIndex ve endIndex'teki dizeyi değiştirmek için kullanılır. |
genel senkronize StringBuffer | sil(int startIndex, int endIndex) | Dizeyi belirtilen startIndex ve endIndex'ten silmek için kullanılır. |
genel senkronize StringBuffer | tersi() | Diziyi tersine çevirmek için kullanılır. |
kamu dahiliyesi | kapasite() | Mevcut kapasiteyi döndürmek için kullanılır. |
Kamu geçersiz | sureCapacity(int minimumCapacity) | Kapasitenin en azından verilen minimuma eşit olmasını sağlamak için kullanılır. |
genel karakter | charAt(int dizini) | Karakteri belirtilen konuma döndürmek için kullanılır. |
kamu dahiliyesi | uzunluk() | Dizenin uzunluğunu, yani toplam karakter sayısını döndürmek için kullanılır. |
genel Dize | alt dize(int beginIndex) | Belirtilen beginIndex'ten alt dizeyi döndürmek için kullanılır. |
genel Dize | substring(int beginIndex, int endIndex) | Belirtilen beginIndex ve endIndex'ten alt dizeyi döndürmek için kullanılır. |
Değişken String nedir?
Değiştirilebilen veya değiştirilebilen bir String, değişken String olarak bilinir. Değişken dizeler oluşturmak için StringBuffer ve StringBuilder sınıfları kullanılır.
1) StringBuffer Sınıfı apend() Yöntemi
Append() yöntemi verilen argümanı bu String ile birleştirir.
StringBufferExample.java
class StringBufferExample{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello '); sb.append('Java');//now original string is changed System.out.println(sb);//prints Hello Java } }
Çıktı:
Hello Java
2) StringBuffer insert() Yöntemi
Insert() yöntemi, verilen Dizeyi bu dizeyle birlikte verilen konuma ekler.
StringBufferExample2.java
class StringBufferExample2{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello '); sb.insert(1,'Java');//now original string is changed System.out.println(sb);//prints HJavaello } }
Çıktı:
HJavaello
3) StringBuffer change() Yöntemi
change() yöntemi, belirtilen beginIndex ve endIndex'ten verilen String'i değiştirir.
StringBufferExample3.java
class StringBufferExample3{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.replace(1,3,'Java'); System.out.println(sb);//prints HJavalo } }
Çıktı:
HJavalo
4) StringBuffer delete() Yöntemi
StringBuffer sınıfının delete() yöntemi, String'i belirtilen beginIndex'ten endIndex'e siler.
StringBufferExample4.java
class StringBufferExample4{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.delete(1,3); System.out.println(sb);//prints Hlo } }
Çıktı:
Hlo
5) StringBuffer ters() Yöntemi
StringBuilder sınıfının revers() yöntemi geçerli String'i tersine çevirir.
StringBufferExample5.java
class StringBufferExample5{ public static void main(String args[]){ StringBuffer sb=new StringBuffer('Hello'); sb.reverse(); System.out.println(sb);//prints olleH } }
Çıktı:
olleH
6) StringBuffer kapasite() Yöntemi
StringBuffer sınıfının kapasite() yöntemi, arabelleğin geçerli kapasitesini döndürür. Buffer'ın varsayılan kapasitesi 16'dır. Karakter sayısı mevcut kapasitesinden artarsa kapasiteyi (eski kapasite*2)+2 artırır. Örneğin mevcut kapasiteniz 16 ise (16*2)+2=34 olacaktır.
StringBufferExample6.java
class StringBufferExample6{ public static void main(String args[]){ StringBuffer sb=new StringBuffer(); System.out.println(sb.capacity());//default 16 sb.append('Hello'); System.out.println(sb.capacity());//now 16 sb.append('java is my favourite language'); System.out.println(sb.capacity());//now (16*2)+2=34 i.e (oldcapacity*2)+2 } }
Çıktı:
16 16 34
7) StringBuffer ProvidCapacity() yöntemi
StringBuffer sınıfının sureCapacity() yöntemi, verilen kapasitenin mevcut kapasiteye göre minimum olmasını sağlar. Mevcut kapasiteden büyükse kapasiteyi (eskikapasite*2)+2 artırır. Örneğin mevcut kapasiteniz 16 ise (16*2)+2=34 olacaktır.
StringBufferExample7.java
class StringBufferExample7{ public static void main(String args[]){ StringBuffer sb=new StringBuffer(); System.out.println(sb.capacity());//default 16 sb.append('Hello'); System.out.println(sb.capacity());//now 16 sb.append('java is my favourite language'); System.out.println(sb.capacity());//now (16*2)+2=34 i.e (oldcapacity*2)+2 sb.ensureCapacity(10);//now no change System.out.println(sb.capacity());//now 34 sb.ensureCapacity(50);//now (34*2)+2 System.out.println(sb.capacity());//now 70 } }
Çıktı:
16 16 34 34 70