Pengaturcaraan Java melibatkan penukaran tatasusunan rentetan kepada bait, teknik mudah digunakan untuk pelbagai tujuan, termasuk komunikasi rangkaian atau penyulitan data. Untuk mencapai matlamat ini, kelas String menyediakan satu siri kaedah untuk penukaran tersebut, dan kaedah getBytes() adalah salah satu daripadanya. Perlu diingat bahawa memilih pengekodan yang sesuai adalah penting, kerana setiap pengekodan menggunakan peraturan yang berbeza apabila memetakan aksara kepada nilai bait.
Dalam artikel ini, kami akan menyelami dua teknik untuk menukar rentetan kepada tatasusunan bait menggunakan kaedah getBytes() Java. Tambahan pula, kami akan memberikan penjelasan yang meluas tentang algoritma yang digunakan oleh setiap kaedah.
Kaedah 1 - Dalam kaedah ini kita akan mencipta rentetan dan kemudian menukarnya menjadi tatasusunan bait menggunakan kaedah getBytes(). Kami akan menggunakan pengekodan UTF-8 dalam contoh ini.
Kaedah 2 - Dalam kaedah ini kita akan mencipta tatasusunan bait dengan menentukan nilai bait secara manual. Kami kemudiannya akan mencipta String daripada tatasusunan bait menggunakan pembina String.
Kaedah getBytes() ialah ahli kelas String di Java. Ia memerlukan satu hujah, iaitu set aksara yang digunakan untuk mengekod rentetan ke dalam tatasusunan bait. Sintaks kaedah getBytes() adalah seperti berikut -
public byte[] getBytes(Charset charset)
Kaedah menukar rentetan kepada tatasusunan bait menggunakan fungsi getBytes() dalam Java boleh dipermudahkan kepada beberapa langkah -
Langkah 1 - Buat seketika objek Charset sepadan dengan pengekodan yang diingini menggunakan kaedah forName() dalam kelas Charset. Langkah ini memerlukan menyediakan nama pengekodan sebagai parameter rentetan.
Langkah 2 - Panggil kaedah getBytes() kelas String sambil menyediakan objek Charset yang dibuat sebelum ini sebagai parameter. Panggilan ini menjana tatasusunan bait yang mewakili aksara dalam rentetan menggunakan pengekodan yang ditentukan.
Langkah 3 - Manipulasi tatasusunan bait yang terhasil seperti yang diperlukan. Java menyediakan pelbagai teknik untuk mengendalikan tatasusunan bait melalui bahasa pengaturcaraannya.
Menggunakan fungsi getBytes() ialah cara yang cekap untuk menukar rentetan kepada tatasusunan bait Java. Ia membolehkan anda menentukan pengekodan yang akan digunakan semasa penukaran. Ini penting kerana pengekodan yang berbeza mempunyai garis panduan yang berbeza untuk memetakan aksara kepada nilai bait. Jika anda menggunakan pengekodan yang salah, kerosakan data mungkin berlaku. Dengan mengikuti algoritma di atas, mereka boleh memastikan bahawa String mereka berjaya dan selamat ditukar kepada tatasusunan bait.
Dalam kaedah ini, kami mula-mula mencipta rentetan yang ingin kami tukar kepada tatasusunan bait. Kemudian, kami menukar String kepada tatasusunan bait menggunakan kaedah getBytes() kelas String. Kami mentakrifkan pengekodan untuk digunakan pada penukaran, dalam kes ini UTF-8. Untuk memastikan tatasusunan bait dijana dengan tepat, kami mencetaknya.
Di bawah ialah kod program yang sama.
import java.nio.charset.Charset; public class StringToByteArrayExample1 { public static void main(String[] args) { // Create a String String str = "Hello, world!"; // Convert the String to a byte array using the UTF-8 encoding Charset utf8 = Charset.forName("UTF-8"); byte[] byteArray = str.getBytes(utf8); // Print the byte array for (byte b : byteArray) { System.out.print(b + " "); } } }
72 101 108 108 111 44 32 119 111 114 108 100 33
Kaedah ini melibatkan memasukkan nilai bait secara manual untuk membina tatasusunan bait. Kemudian gunakan pembina String untuk menukar tatasusunan bait kepada String.
Di bawah ialah kod program yang sama.
import java.nio.charset.Charset; public class StringToByteArrayExample2 { public static void main(String[] args) { // Create a byte array byte[] byteArray = {72, 101, 108, 108, 111, 44, 32, 119, 111, 114, 108, 100, 33}; // Convert the byte array to a String using the UTF-8 encoding Charset utf8 = Charset.forName("UTF-8"); String str = new String(byteArray, utf8); // Print the String System.out.println(str); } }
Hello, world!
Artikel ini memperkenalkan fungsi containsKey(), yang digunakan untuk menentukan sama ada kunci terkandung dalam peta cincang. Kaedah ini menerima kunci sebagai input dan mengembalikan benar jika kunci ditemui dalam peta cincang jika tidak, mengembalikan palsu.
Atas ialah kandungan terperinci Tukar rentetan kepada tatasusunan bait menggunakan kaedah getBytes(Charset) dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!