Penukaran Integer kepada Tatasusunan Byte yang Cekap dalam Java
Menukar integer kepada tatasusunan bait boleh berguna untuk pelbagai tujuan, seperti rangkaian penghantaran atau penyimpanan data. Terdapat pelbagai pendekatan untuk mencapai penukaran ini.
Kelas ByteBuffer:
Satu kaedah yang cekap ialah menggunakan kelas ByteBuffer. ByteBuffer ialah penimbal yang menyimpan data binari dan menyediakan pelbagai operasi untuk memanipulasinya. Untuk menukar integer kepada tatasusunan bait menggunakan ByteBuffer:
ByteBuffer b = ByteBuffer.allocate(4); // Allocate a 4-byte buffer b.putInt(0xAABBCCDD); // Write the integer value to the buffer byte[] result = b.array(); // Retrieve the byte array from the buffer
Di sini, susunan bait penimbal memastikan bahawa bait disusun dalam susunan yang betul.
Penukaran Manual :
Sebagai alternatif, anda boleh menukar integer secara manual kepada tatasusunan bait:
byte[] toBytes(int i) { // Create a new byte array of length 4 byte[] result = new byte[4]; // Shift bits and assign to each byte result[0] = (byte) (i >> 24); result[1] = (byte) (i >> 16); result[2] = (byte) (i >> 8); result[3] = (byte) i; return result; }
Pendekatan ini memerlukan peralihan bit dan penugasan yang jelas kepada setiap bait.
Kaedah Helper dalam java.nio.Bits:
Kelas ByteBuffer menggunakan kaedah pembantu dalaman yang ditakrifkan dalam kelas java.nio.Bits:
private static byte int3(int x) { return (byte)(x >> 24); } private static byte int2(int x) { return (byte)(x >> 16); } private static byte int1(int x) { return (byte)(x >> 8); } private static byte int0(int x) { return (byte)(x >> 0); }
Kaedah ini mudahkan operasi peralihan bit yang dinyatakan di atas.
Atas ialah kandungan terperinci Bagaimana dengan Cekap Menukar Integer kepada Array Byte di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!