Java'da StringBuffer: Her Java Geliştiricisinin Bilmesi Gereken 11 Popüler Yöntem

Yayınlanan: 2021-05-26

İçindekiler

Java'da StringBuffer'a Giriş

Java'daki StringBuffer, yöntemleri Java.lang.Object sınıfından miras alan bir sınıftır. Değiştirilebilir veya değiştirilebilir String oluşturmak için kullanılan bir String sınıfıdır. Değiştirilebilmesi dışında String'in işlevselliğinin çoğunu sağlar, yani değişmez ve sabit uzunluklu karakter dizileri yerine yazılabilir ve büyütülebilir karakter dizilerini temsil eder. Java'daki java.lang.StringBuffer hakkında bazı önemli noktalar şunlardır:

· Karakter dizisinin içeriği ve uzunluğu çeşitli metot çağrıları ile değiştirilebilir.

· İş parçacığı için güvenlidir, yani birden çok iş parçacığı tarafından kullanım için güvenlidir

· Java'daki her StringBuffer'ın bir kapasitesi vardır.

· Alt dizeler ve karakterler, sona veya ortasına eklenebilir. Otomatik olarak büyür ve eklemeler için yer açar. Genellikle, büyümeye yer açmak için gerekenden daha fazla karakter önceden tahsis edilir.

Java sınıfındaki StringBuffer şu şekilde bildirilir:

genel son sınıf StringBuffer

nesneyi genişletir

Serializable, CharSequence uygular

StringBuffer Sınıfının Oluşturucuları

1. StringBuffer() – Bu, başlangıç ​​kapasitesi 16 karakter olan ve içinde karakter olmayan bir dize arabelleği oluşturmak için kullanılır. Sözdizimi:

StringBuffer a =yeni StringBuffer();

2. StringBuffer (CharSequence seq) – Bu, CharSequence'dekiyle aynı karakterleri içeren bir dize arabelleği oluşturmak için kullanılır.

3. StringBuffer (int kapasite) – Bu, başlangıç ​​kapasitesi belirtilen ve karakter içermeyen bir dize arabelleği oluşturmak için kullanılır. Sözdizimi:

StringBuffer a=yeni StringBuffer(10);

4. StringBuffer (String str) – Bu, verilen String içeriği ile bir string arabelleği oluşturmak için kullanılır. Sözdizimi:

StringBuffer a=new StringBuffer(“Java'da stringbuffer”);

Okuyun: String Buffers ve String Builders Arasındaki Fark

11 Popüler Yöntem

1) Java Append() Yönteminde StringBuffer

.append(), verilen dizeyi ve argümanı birleştirmek için kullanılır. İşte bir örnek:

java.io'yu içe aktar*;

genel sınıf arabelleği {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.append(“Java'da”);

System.out.println(a);

a.append(0);

System.out.println(a);

}

}

Çıktı:

2) Java Insert() Yönteminde StringBuffer

.insert() yöntemi, belirtilen konumda ana dize ile belirli bir dize eklemek için kullanılır. İşte bir örnek:

java.io'yu içe aktar*;

genel sınıf arabelleği {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.insert(5, “için”);

System.out.println(a);

a.insert(0, 5);

System.out.println(a);

a.insert(3, yanlış);

System.out.println(a);

a.insert(5, 41.55d);

System.out.println(a);

a.insert(8, 41.55f);

System.out.println(a);

char dizi[] = { 'j', 'a', 'v', 'a' };

a.insert(2, dizi);

System.out.println(a);

} }

Çıktı:

Ayrıca Okuyun: Java Projesi Fikirleri ve Konuları

3) Java replace() yönteminde StringBuffer

.replace(), aralıkta (beginIndex, endIndex) belirtildiği gibi dizenin bir bölümünü değiştirmek için kullanılır. İşte bir örnek:

java.io'yu içe aktar*;

genel sınıf arabelleği {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.replace(5, 8, “are”);

System.out.println(a);

}

}

Çıktı:

4) Java Delete() Yönteminde StringBuffer

.delete(), aralıkta (beginIndex, endIndex) belirtilen şekilde dizeyi silmek için kullanılır.

.deleteCharAt(), belirli bir dizindeki karakteri silmek için kullanılır. Bu yöntem, elde edilen stringbuffer nesnesini döndürür. İşte bir örnek:

java.io'yu içe aktar*;

genel sınıf arabelleği {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“Java'da string tampon”);

a.delete(0, 6);

System.out.println(a);

a.deleteCharAt(7);

System.out.println(a);

}

}

Çıktı:

5) Java Reverse() Yönteminde StringBuffer

.reverse() adından da anlaşılacağı gibi verilen dizgiyi tersine çevirmek için kullanılır. İşte bir örnek:

java.io'yu içe aktar*;

genel sınıf arabelleği {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

a.ters();

System.out.println(a);

}

}

Çıktı:

6) Java Capacity() Yönteminde StringBuffer

Java sınıfındaki StringBuffer'ın .capacity() işlevi, ara belleğin mevcut kapasitesini döndürmek için kullanılır. 16 varsayılan kapasitedir. Karakter sayısı arttıkça kapasite artar. Yeni kapasite = (eski kapasite*2)+2. yani mevcut kapasite 16 ise yeni kapasite 32+2=34 olacaktır.

.length, Java'da bir StringBuffer'ın uzunluğunu bulmak için kullanılır. Örneğin:

java.io'yu içe aktar*;

genel sınıf arabelleği {

public static void main(String[] args)

{

StringBuffer a = new StringBuffer(“stringbuffer”);

int p = a.uzunluk();

int q = a.kapasite();

System.out.println(“Dize uzunluğu =” + p);

System.out.println(“Dizenin kapasitesi =” + q);

}

}

Çıktı:

Dünyanın en iyi Üniversitelerinden çevrimiçi olarak Yazılım Mühendisliği dereceleri alın . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.

7) Java eminCapacity() Yönteminde StringBuffer

Belirtilen kapasitenin mevcut kapasiteye göre minimum olmasını sağlamak için stringbuffer sınıfının .ensureCapacity() kullanılır. Verilen kapasite mevcut kapasiteden büyük ise yeni kapasite (eski kapasite*2)+2 olur. yani eski kapasite 16 ise kapasite 34 olur. Örneğin:

genel sınıf arabelleği{

public static void main(String args[]){

StringBuffer a=yeni StringBuffer();

System.out.println(a.kapasite());

a.append(“Merhaba”);

System.out.println(a.kapasite());

a.append(“java”);

System.out.println(a.kapasite());

a.ensureCapacity(10);

System.out.println(a.kapasite());

a.ensureCapacity(50);

System.out.println(a.kapasite());

}

}

Çıktı:

Ödeme: Hindistan'da Java Geliştirici Maaşı

8. charAt(int index) – Bu yöntem, verilen dizindeki karakteri döndürmek için kullanılır.

9. substring( int begIndex) – Bu yöntem, belirli bir dizenin startIndex'ten başlayarak alt dizesini döndürmek için kullanılır.

10. substring(int startupIndex, int endIndex) – Bu yöntem, verilen String'in startIndex ile başlayıp endIndex ile biten alt dizesini döndürmek için kullanılır.

11. void trimToSize() – Bu yöntem, karakter dizisi için depolama alanını azaltmak için kullanılır

Java'da String ve StringBuffer Arasındaki Fark

Bu örneği, StringBuffer ve String sınıfının nesnelerini oluşturmak ve değiştirmek için kullanıyoruz. StringBuffer nesnesinin değiştirildiğini, ancak String'in değiştirilmediğini görüyoruz. Aşağıdaki örneğe bakın:

genel sınıf arabelleği {

public static void main(String args[])

{

Dizgi dizgisi = “dizgi”;

str.concat(“tampon”);

System.out.println(str);

StringBuffer strB = yeni StringBuffer(“dize”);

strB.append(“tampon”);

System.out.println(strB);

}

}

Çıktı:

Açıklama: Çıktı böyle çünkü dizeler değişmez. Dize nesnesini birleştirmeye çalışırsak, değiştirilmeyecektir. Ancak, Java'daki bir StringBuffer, değiştirilebilir nesneler oluşturur. Böylece değiştirilebilir.

İlginç Noktalar

  1. Object sınıfını genişletir.
  2. Java'da StringBuffer'ın uygulanan arayüzleri Appendable, Serializable ve CharSequence'dir.
  3. StringBuffer yöntemleri, gerektiğinde senkronize edilebilir. Bu, tüm işlemlerin bir seri sırayla gerçekleşiyormuş gibi davrandığı anlamına gelir.
  4. Kaynak diziyi içeren bir işlem gerçekleştiğinde, bu sınıf kaynakla değil, yalnızca çalışan dize arabelleğinde eşitlenir.
  5. Nesne sınıfından miras alınan yöntemlerden bazıları; equals, clone, getClass, notify, notifyAll, hashCode ve finalize'dir.

Çözüm

Java'daki StringBuffer, değiştirilebilir dize nesneleri oluşturur. Böylece, karakter veya dize dizisini eklemek, değiştirmek, tersine çevirmek, birleştirmek ve değiştirmek için StringBuffer'ı kullanabiliriz. StringBuffer sınıfı altındaki yöntemler bu işlevlere bağlıdır. Özetlemek gerekirse, Java'daki StringBuffer, yalnızca birden çok iş parçacığı StringBuffer'ın içeriğini değiştirirken kullanılır. String'den daha hızlıdır.

Bu yazımızda Java StringBuffer ile ilgili tüm detayları öğrendik . Java hakkında daha fazla bilgi edinmek ve teknik kariyerinizde ilerlemek istiyorsanız, Hindistan'ın en büyük çevrimiçi yüksek öğrenim şirketi upGrad'ın kurslarını keşfedin.

Java, tam yığın yazılım geliştirme hakkında daha fazla bilgi edinmek istiyorsanız, upGrad & IIIT-B'nin Yazılım Geliştirmede Yönetici PG Programına göz atın – Çalışan profesyoneller için tasarlanmış ve 500 saatten fazla zorlu eğitim sunan Tam Yığın Geliştirmede Uzmanlık , 9+ proje ve ödev, IIIT-B Mezun statüsü, pratik uygulamalı bitirme projeleri ve en iyi firmalarla iş yardımı.

Hayalinizdeki İşe Yer Açın

UpGrad'ın Yazılım Mühendisliğinde İş Bağlantılı PG Sertifikasyonu için başvurun