CodeGym/Blog Java/rawak/StringTokenizer di Jawa
John Squirrels
Tahap
San Francisco

StringTokenizer di Jawa

Diterbitkan dalam kumpulan
Kelas StringTokenizer dalam Java menyediakan kaedah String tokenizer untuk memisahkan rentetan kepada token berdasarkan pembatas yang ditentukan. Rentetan tokenizer boleh menjadi sebarang rentetan yang memisahkan token, seperti koma, koma bertitik atau ruang putih. Menggunakan kaedah String tokenizer kelas StringTokenizer , kita boleh memisahkan rentetan kepada bahagian konstituennya. Dengan memanggil kaedah nextToken() , kita boleh mendapatkan setiap token secara bergilir-gilir dan dengan menggunakan kaedah hasMoreTokens() , kita boleh menyemak sama ada masih ada token lagi. Kaedah length() kelas StringTokenizer boleh digunakan untuk mendapatkan panjang setiap token. StringTokenizer String ialah alat yang berguna untuk manipulasi rentetan dan boleh digunakan untuk menghuraikan fail CSV, URL atau data berasaskan teks yang lain. Kelas StringTokenizer ialah sebahagian daripada pakej Java.util dan menyediakan cara mudah untuk memisahkan rentetan kepada token. Kelas ini mempunyai dua pembina, satu yang mengambil rentetan untuk dijadikan token dan watak atau rentetan pembatas, dan satu lagi yang mengambil hujah yang sama serta bendera Boolean yang menunjukkan sama ada untuk memasukkan pembatas sebagai token atau tidak. Sebaik sahaja anda telah mencipta objek StringTokenizer , anda boleh menggunakan pelbagai kaedahnya untuk beralih melalui token dan melakukan pelbagai operasi padanya.

Kaedah Tokenisasi

Kaedah tokenisasi ialah proses membelah rentetan kepada bahagian atau token yang lebih kecil. Proses ini dilakukan menggunakan pembatas, yang boleh menjadi aksara atau rentetan aksara yang memisahkan setiap token. Sebagai contoh, pertimbangkan rentetan berikut:
String input = "Hello World! How are you today?";
Jika kita ingin memisahkan rentetan ini kepada perkataan individu, kita boleh menggunakan aksara ruang sebagai pembatas, seperti:
StringTokenizer tokenizer = new StringTokenizer(input, " ");
while (tokenizer.hasMoreTokens()) {
    String token = tokenizer.nextToken();
    System.out.println(token);
}

Pengeluaran

Hai dunia! Apa khabar anda hari ini?
Dalam contoh ini, kami mencipta objek StringTokenizer baharu dengan rentetan input dan aksara ruang sebagai pembatas. Kami kemudian melingkari token menggunakan kaedah hasMoreTokens() dan mendapatkan setiap token menggunakan kaedah nextToken() . Akhirnya, kami mencetak setiap token ke konsol.

Panjang Token

Sebagai tambahan kepada fungsi asas yang disediakan oleh kaedah nextToken() , kelas StringTokenizer juga menyediakan kaedah untuk mendapatkan panjang setiap token dan untuk mendapatkan semula token tertentu mengikut indeks. Untuk mendapatkan panjang token semasa, anda boleh menggunakan kaedah token.length() . Sebagai contoh:
public class StringTokenizerExample {
    public static void main(String[] args) {
        String input = "Hello World! How are you today?";
        StringTokenizer tokenizer = new StringTokenizer(input, " ");
        while (tokenizer.hasMoreTokens()) {
            String token = tokenizer.nextToken();
            System.out.println("Token: " + token + " Length: " + token.length());
        }
    }
}

Pengeluaran

Token: Hello Panjang: 5 Token: Dunia! Panjang: 6 Token: Berapa Panjang: 3 Token: ialah Panjang: 3 Token: anda Panjang: 3 Token: hari ini? Panjang: 6
Dalam contoh ini, kami mendapatkan semula setiap token seperti sebelumnya tetapi juga menggunakan kaedah length() untuk mendapatkan panjang setiap token, yang kemudian kami cetak ke konsol.

Contoh

Mari kita lihat contoh lengkap yang menunjukkan cara menggunakan kelas StringTokenizer dalam Java:
public class Example {
    public static void main(String[] args) {
        String input = "John,Doe,123 Main St.,Anytown,USA";
        StringTokenizer tokenizer = new StringTokenizer(input, ",");
        while (tokenizer.hasMoreTokens()) {
            System.out.println(tokenizer.nextToken());
        }
    }
}

Pengeluaran

John Doe 123 Main St. Anytown USA
Dalam contoh ini, kami mempunyai rentetan yang mewakili senarai nilai yang dipisahkan koma. Kami mencipta objek StringTokenizer baharu dengan rentetan ini dan koma sebagai pembatas. Kami kemudian melingkari token menggunakan kaedah hasMoreTokens() dan mendapatkan setiap token menggunakan kaedah nextToken() . Akhirnya, kami mencetak setiap token ke konsol. Ambil perhatian bahawa kami tidak menggunakan kaedah length() dalam contoh ini, kerana kami hanya berminat dengan token individu itu sendiri.

Kelas StreamTokenizer

Walaupun kelas StringTokenizer menyediakan cara mudah untuk memisahkan rentetan kepada token, ia mempunyai beberapa batasan. Contohnya, ia tidak boleh mengendalikan berbilang pembatas atau jenis token yang berbeza, seperti nombor dan perkataan. Jika anda memerlukan keupayaan tokenisasi yang lebih maju, anda boleh menggunakan kelas StreamTokenizer . Kelas ini memberikan lebih fleksibiliti dan boleh mengendalikan pelbagai jenis input. Untuk mengukuhkan perkara yang anda pelajari, kami cadangkan anda menonton pelajaran video daripada Kursus Java kami

Kesimpulan

Dalam artikel ini, kami telah meneroka kelas StringTokenizer di Java dan melihat cara ia boleh digunakan untuk memisahkan rentetan kepada token. Kami juga telah melihat cara menggunakan beberapa kaedah kelas untuk melaksanakan pelbagai operasi pada token, seperti mendapatkan panjangnya dan mendapatkan semula token tertentu mengikut indeks. Walaupun kelas StringTokenizer ialah alat yang mudah dan berguna, ia mempunyai batasannya. Jika anda memerlukan keupayaan tokenisasi yang lebih maju, pertimbangkan untuk menggunakan kelas StreamTokenizer atau perpustakaan yang lebih berkuasa seperti Apache Commons Lang. Ingat untuk sentiasa mempertimbangkan keperluan khusus projek anda apabila memutuskan alat dan teknik yang hendak digunakan. Dengan pemahaman yang kukuh tentang kelas dan kaedah manipulasi rentetan Java, anda boleh menangani walaupun tugas manipulasi rentetan yang paling kompleks dengan mudah.
Komen
  • Popular
  • Baru
  • Tua
Anda mesti log masuk untuk meninggalkan ulasan
Halaman ini tidak mempunyai sebarang ulasan lagi