StringBuffer w Javie: 11 popularnych metod, które powinien znać każdy programista Java
Opublikowany: 2021-05-26Spis treści
Wprowadzenie do StringBuffer w Javie
StringBuffer w java to klasa dziedzicząca metody z klasy java.lang.Object. Jest to klasa równorzędna String, która służy do tworzenia modyfikowalnego lub modyfikowalnego String. Zapewnia wiele funkcji String, z wyjątkiem tego, że może być zmieniany, tj. reprezentuje zapisywalne i rozwijalne sekwencje znaków zamiast sekwencji znaków niezmiennych io stałej długości. Oto kilka podstawowych punktów dotyczących java.lang.StringBuffer w Javie:
· Treść i długość sekwencji znaków można zmieniać za pomocą różnych wywołań metod.
· Jest bezpieczny wątkowo, tj. bezpieczny do użytku przez wiele wątków
· Każdy StringBuffer w Javie ma pojemność.
· Podciągi i znaki mogą być dołączane na końcu lub wstawiane w środku. Automatycznie rośnie i robi miejsce na dodatki. Często wstępnie przydziela się więcej znaków, niż jest to potrzebne, aby zapewnić miejsce na rozwój.
Oto jak deklarowany jest StringBuffer w klasie Java:
publiczna klasa końcowa StringBuffer
rozszerza obiekt
implementuje Serializable, CharSequence
Konstruktorzy klasy StringBuffer
1. StringBuffer() — służy do skonstruowania bufora ciągu o początkowej pojemności 16 znaków i bez znaków. Składnia:
StringBuffer a =new StringBuffer();
2. StringBuffer (CharSequence seq) – służy do konstruowania bufora ciągu, który zawiera te same znaki, co w CharSequence.
3. StringBuffer (pojemność int) — służy do tworzenia bufora ciągu, którego początkowa pojemność jest określona i bez znaków. Składnia:
StringBuffer a=nowy StringBuffer(10);
4. StringBuffer (String str) – Służy do tworzenia bufora ciągu z podaną zawartością ciągu. Składnia:
StringBuffer a=new StringBuffer("bufor łańcuchów w javie");
Przeczytaj: Różnica między buforami ciągów a konstruktorami ciągów
11 popularnych metod
1) StringBuffer w metodzie Append() Java
.append() służy do łączenia podanego ciągu i argumentu. Oto przykład:
importuj java.io.*;
bufor klasy publicznej {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“bufor łańcuchowy”);
a.append(„w Javie”);
System.out.println(a);
a.dołącz(0);
System.out.println(a);
}
}
Wyjście:
2) StringBuffer w metodzie Insert() Javy
Metoda .insert() służy do wstawienia danego ciągu z głównym ciągiem w określonej pozycji. Oto przykład:
importuj java.io.*;
bufor klasy publicznej {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“bufor łańcuchowy”);
a.wstaw(5, „za”);
System.out.println(a);
a.wstaw(0, 5);
System.out.println(a);
a.wstaw(3, fałsz);
System.out.println(a);
a.wstawka(5, 41.55d);
System.out.println(a);
a.wstawka(8, 41.55f);
System.out.println(a);
char arr[] = { 'j', 'a', 'v', 'a' };
a.wstaw(2, arr);
System.out.println(a);
} }
Wyjście:
Przeczytaj także: Pomysły i tematy projektów Java
3) StringBuffer w metodzie Java replace()
.replace() służy do zastąpienia części ciągu określonego w zakresie (beginIndex, endIndex). Oto przykład:
importuj java.io.*;
bufor klasy publicznej {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“bufor łańcuchowy”);
a.zamień(5, 8, „są”);
System.out.println(a);
}
}
Wyjście:
4) StringBuffer w metodzie Java Delete()
.delete() służy do usuwania ciągu określonego w zakresie (beginIndex, endIndex).
.deleteCharAt() służy do usuwania znaku z określonego indeksu. Ta metoda zwraca wynikowy obiekt bufora ciągów. Oto przykład:
importuj java.io.*;
bufor klasy publicznej {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(„bufor ciągu w java”);
a.usuń(0, 6);
System.out.println(a);
a.deleteCharAt(7);
System.out.println(a);
}
}
Wyjście:
5) StringBuffer w metodzie Java Reverse()
.reverse() jak sama nazwa wskazuje służy do odwrócenia podanego ciągu. Oto przykład:
importuj java.io.*;
bufor klasy publicznej {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“bufor łańcuchowy”);
a.rewers();
System.out.println(a);
}
}
Wyjście:
6) StringBuffer w metodzie Java Capacity()
.capacity() StringBuffer w klasie java służy do zwracania aktualnej pojemności bufora. 16 to pojemność domyślna. Pojemność zwiększa się, zwiększając liczbę postaci. Nowa pojemność = (stara pojemność*2)+2. tj. jeśli aktualna pojemność wynosi 16, nowa pojemność wyniesie 32+2=34.
.length służy do znalezienia długości StringBuffer w java. Na przykład:
importuj java.io.*;
bufor klasy publicznej {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“bufor łańcuchowy”);
int p = a.długość();
int q = a.pojemność();
System.out.println("Długość ciągu wynosi =" + p);
System.out.println("Pojemność ciągu wynosi =" + q);
}
}
Wyjście:
Zdobądź dyplomy z inżynierii oprogramowania online na najlepszych światowych uniwersytetach. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.
7) StringBuffer w Javie Metoda secureCapacity()
.ensureCapacity() klasy stringbuffer służy do upewnienia się, że określona pojemność jest minimalna w stosunku do aktualnej pojemności. Jeśli dana pojemność jest większa niż bieżąca, nowa pojemność staje się (stara pojemność*2)+2. tj. pojemność wynosi 34, jeśli stara pojemność wynosi 16. Na przykład:
bufor klasy publicznej{
public static void main(String args[]){
StringBuffer a=nowy StringBuffer();
System.out.println(a.capacity());
a.append("Cześć");
System.out.println(a.capacity());
a.append(„java”);
System.out.println(a.capacity());
a. zapewnić pojemność(10);
System.out.println(a.capacity());
a. zapewnić pojemność(50);
System.out.println(a.capacity());
}
}
Wyjście:
Zamówienie: wynagrodzenie programisty Java w Indiach
8. charAt(int index) – Ta metoda służy do zwracania znaku o podanym indeksie.
9. substring( int begIndex) – Ta metoda służy do zwrócenia podciągu danego ciągu, zaczynając od beginIndex.
10. substring(int beginIndex, int endIndex) – Ta metoda służy do zwrócenia podciągu danego Stringa rozpoczynającego się od beginIndex i kończącego się na endIndex.
11. void trimToSize() – Ta metoda służy do zmniejszenia miejsca na przechowywanie sekwencji znaków
Różnica między ciągiem a buforem ciągów w Javie
Ten przykład wykorzystujemy do tworzenia obiektów klasy StringBuffer i String oraz ich modyfikacji. Widzimy, że obiekt StringBuffer zostaje zmodyfikowany, podczas gdy String nie. Zobacz przykład poniżej:
bufor klasy publicznej {
public static void main(String args[])
{
Ciąg str = „ciąg”;
str.concat("bufor");
System.out.println(str);
StringBuffer strB = new StringBuffer(„ciąg”);
strB.append("bufor");
System.out.println(strB);
}
}
Wyjście:
Objaśnienie: Dane wyjściowe są takie, ponieważ łańcuchy są niezmienne. Jeśli spróbujemy połączyć obiekt tekstowy, nie zostanie on zmieniony. Jednak StringBuffer w java tworzy zmienne obiekty. W ten sposób można go zmienić.
Ciekawe punkty
- Rozszerza klasę Object.
- Zaimplementowane interfejsy StringBuffer w java to Appendable, Serializable i CharSequence.
- Metody StringBuffer mogą być synchronizowane wszędzie tam, gdzie jest to konieczne. Oznacza to, że wszystkie operacje zachowują się tak, jakby występowały w pewnej kolejności szeregowej.
- Gdy wystąpi operacja obejmująca sekwencję źródłową, ta klasa synchronizuje się tylko w buforze ciągów, a nie w źródle.
- Niektóre z metod dziedziczonych z klasy obiektów to equals, clone, getClass, notify, notifyAll, hashCode i finalize.
Wniosek
StringBuffer w javie tworzy modyfikowalne obiekty tekstowe. W ten sposób możemy użyć StringBuffer do dołączania, zastępowania, odwracania, łączenia i modyfikowania sekwencji znaków lub ciągów. Metody w klasie StringBuffer stosują się do tych funkcji. Podsumowując, StringBuffer w javie jest używany tylko wtedy, gdy wiele wątków modyfikuje zawartość StringBuffer. Jest szybszy niż String.
W tym artykule poznaliśmy każdy szczegół na temat Java StringBuffer . Jeśli chcesz dowiedzieć się więcej o javie i zrobić postęp w swojej karierze technicznej, zapoznaj się z kursami prowadzonymi przez największą w Indiach firmę zajmującą się edukacją wyższą online.
Jeśli chcesz dowiedzieć się więcej o Java, tworzeniu oprogramowania typu full-stack, sprawdź program Executive PG UpGrad i IIIT-B w tworzeniu oprogramowania – specjalizacja w tworzeniu pełnego stosu, który jest przeznaczony dla pracujących profesjonalistów i oferuje ponad 500 godzin rygorystycznego szkolenia , 9+ projektów i zadań, status absolwentów IIIT-B, praktyczne praktyczne projekty zwieńczenia i pomoc w pracy z najlepszymi firmami.