"Apa pendapat awak, Amigo? Apakah kelas Java yang paling popular selepas int?"
"Anda sudah memberi saya spoiler dalam tajuk pelajaran, Ellie. Ia String
!"
"Sememangnya, ia adalah spoiler. String
digunakan sepenuhnya di mana-mana. Ia mempunyai banyak kaedah berguna yang anda lebih tahu.
" String
Kelas adalah satu-satunya kelas selain daripada jenis primitif yang literalnya boleh digunakan dalam switch
pernyataan; pengkompil mengendalikan penambahan rentetan dan objek Rentetan dengan cara yang istimewa; String
objek disusun dalam ingatan dengan cara yang istimewa. Pada asasnya, kelas String
adalah sangat kelas khas.
"Selain itu, String
kelas ini mempunyai sekumpulan kelas pembantu yang tujuannya adalah untuk memudahkan lagi bekerja dengan rentetan dalam Java. Apabila anda mempelajari semua ini, banyak perkara akan menjadi lebih mudah untuk anda lakukan."
"Saya tidak sabar."
"Nah, kita akan bermula dari teras ekosistem ini — organisasi kelas String
. Struktur kelas String
sebenarnya sangat mudah: di dalamnya terdapat tatasusunan aksara ( char
tatasusunan) yang menyimpan semua aksara rentetan. Untuk contoh, beginilah cara perkataan 'Hello' disimpan:

Ianya penting.
Sebenarnya, ini tidak begitu tepat. Oleh kerana String
kelas adalah sangat penting, ia menggunakan banyak pengoptimuman, dan data disimpan secara dalaman bukan sebagai tatasusunan aksara, tetapi hanya sebagai tatasusunan bait.
Kaedah kelas String
Kelas String
mempunyai banyak kaedah: ia mempunyai 18 pembina sahaja! Jadi, di bawah saya akan menyenaraikan hanya yang paling kerap digunakan:
Kaedah | Penerangan |
---|---|
|
Mengembalikan bilangan aksara dalam rentetan |
|
Menyemak sama ada rentetan itu ialah rentetan kosong |
|
Semak bahawa rentetan hanya mengandungi aksara ruang putih: ruang, tab, baris baharu, dsb. |
|
Mengembalikan aksara pada kedudukan indeks dalam rentetan. |
|
Mengembalikan tatasusunan aksara (salinan) yang membentuk rentetan |
|
Menukar rentetan kepada set bait dan mengembalikan tatasusunan bait. |
|
Membahagikan rentetan kepada berbilang subrentetan. |
|
Mencantumkan berbilang subrentetan bersama-sama |
|
Meletakkan rentetan ke dalam kolam rentetan. |
"Itu kelihatan sangat bagus!"
"Mari kita tulis program yang menukar laluan fail daripada gaya Unix kepada gaya Windows. Unix menggunakan aksara /
untuk memisahkan folder, manakala Windows menggunakan \
aksara.
Penyelesaian 1. Menggunakan char
tatasusunan
Kod | Nota |
---|---|
|
Cipta objek Pengimbas Baca baris daripada konsol Tukar rentetan kepada tatasusunan aksara Gelung ke atas aksara Jika aksara itu / , gantikannya dengan \ . Jangan lupa tentang melarikan diri. Buat rentetan baharu berdasarkan tatasusunan aksara. Paparkan rentetan. |
Penyelesaian 2. Menggunakan kaedah split()
dan join()
:
Kod | Nota |
---|---|
|
Cipta objek Pengimbas Baca baris daripada konsol Tukar rentetan kepada tatasusunan rentetan . Watak / digunakan sebagai pemisah (dua garis miring tambahan adalah hasil daripada melarikan diri berganda). Gabungkan semua rentetan dalam tatasusunan rentetan . Ia \ digunakan sebagai pemisah (kita lihat ia terlepas). Paparkan rentetan. |
Penyelesaian 3. Menggunakan replace(char oldChar, char newChar)
kaedah:
Kod | Nota |
---|---|
|
Cipta objek Pengimbas Baca baris dari konsol Hanya gantikan satu aksara dengan yang lain (yang kedua dilepaskan) Paparkan rentetan. |
"Saya paling suka penyelesaian ketiga. Tetapi saya akan berlatih ketiga-tiganya."
"Syabas, Amigo. Saya nampak awak sudah tidak sabar untuk mempraktikkan ilmu baru awak. Pelajaran sudah tamat."
GO TO FULL VERSION