Java StringBuffer
Apabila mengubah suai rentetan, anda perlu menggunakan kelas StringBuffer dan StringBuilder.
Tidak seperti kelas String, objek kelas StringBuffer dan StringBuilder boleh diubah suai beberapa kali tanpa menghasilkan objek baru yang tidak digunakan.
Kelas StringBuilder telah dicadangkan dalam Java 5. Perbezaan terbesar antaranya dan StringBuffer ialah kaedah StringBuilder tidak selamat untuk benang (tidak boleh diakses secara serentak).
Memandangkan StringBuilder mempunyai kelebihan kelajuan berbanding StringBuffer, adalah disyorkan untuk menggunakan kelas StringBuilder dalam kebanyakan kes. Walau bagaimanapun, apabila aplikasi memerlukan keselamatan benang, kelas StringBuffer mesti digunakan.
Instance
public class Test{ public static void main(String args[]){ StringBuffer sBuffer = new StringBuffer(" test"); sBuffer.append(" String Buffer"); System.out.println(sBuffer); } }
Hasil penyusunan dan larian contoh di atas adalah seperti berikut:
test String Buffer
Kaedah StringBuffer
Berikut adalah kaedah utama yang disokong oleh kelas StringBuffer:
Nombor siri | Penerangan kaedah | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 |
tambah StringBuffer awam(String s)
| ||||||||||||
2 | awam StringBuffer reverse()<🎜> Menggantikan urutan aksara ini dengan bentuk terbaliknya. | ||||||||||||
3 | padam awam(int mula, int akhir)<🎜> Mengalih keluar aksara daripada subrentetan urutan ini. | ||||||||||||
4 |
sisipan awam(int offset, int i)<🎜>
Memasukkan perwakilan rentetan bagi argumen int ke dalam urutan ini. | ||||||||||||
5 |
ganti(int mula, int akhir, String str)<🎜>
Menggantikan aksara dalam subrentetan urutan ini dengan aksara dalam String yang diberikan. |
Kaedah dalam senarai berikut adalah serupa dengan kaedah kelas String:
Nombor siri | Penerangan Kaedah |
---|---|
1 |
kapasiti int() Mengembalikan kapasiti semasa. |
2 |
char charAt(int index) Mengembalikan nilai char pada indeks yang ditentukan dalam urutan ini. |
3 |
void ensureCapacity(int minimumCapacity) Pastikan kapasiti sekurang-kurangnya sama dengan minimum yang ditetapkan. |
4 |
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) Menyalin aksara daripada jujukan ini kepada tatasusunan aksara sasaran dst . |
5 |
int indexOf(String str) Mengembalikan indeks dalam rentetan kejadian pertama subrentetan yang ditentukan. |
6 |
int indexOf(String str, int fromIndex) Bermula pada indeks yang ditentukan, mengembalikan indeks kejadian pertama subrentetan yang ditentukan dalam rentetan. |
7 |
int lastIndexOf(String str) Mengembalikan indeks dalam rentetan ini kejadian paling kanan subrentetan yang ditentukan. |
8 |
int lastIndexOf(String str, int fromIndex) Mengembalikan indeks dalam rentetan ini kejadian terakhir bagi subrentetan yang ditentukan. |
9 |
int length() Mengembalikan panjang (bilangan aksara). |
10 |
void setCharAt(int index, char ch) Tetapkan aksara pada indeks yang diberikan kepada ch . |
11 |
void setLength(int newLength) Tetapkan panjang jujukan aksara. |
12 |
CharSequence subSequence(int mula, int akhir) Mengembalikan urutan aksara baharu yang merupakan susulan daripada jujukan ini. |
13 |
Subrentetan rentetan(int mula) Mengembalikan String baharu yang mengandungi jujukan aksara yang kini terkandung dalam jujukan aksara ini. |
14 |
Subrentetan rentetan(int mula, int akhir) Mengembalikan String baharu yang mengandungi urutan aksara yang kini terkandung dalam urutan ini. |
15 |
Rentetan keString() Mengembalikan perwakilan rentetan data dalam urutan ini. |