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.
GO TO FULL VERSION