Program Kotlin untuk Menukar Array Byte ke Heksadesimal

Dalam program ini, anda akan mempelajari teknik yang berbeza untuk menukar susunan bait ke heksadesimal di Kotlin.

Contoh 1: Tukar Array Byte ke nilai Hex

 fun main(args: Array) ( val bytes = byteArrayOf(10, 2, 15, 11) for (b in bytes) ( val st = String.format("%02X", b) print(st) ) )

Semasa anda menjalankan program, outputnya adalah:

 0A020F0B

Dalam program di atas, kita mempunyai susunan bait bernama bait. Untuk menukar susunan bait ke nilai hex, kita mengulangi setiap bait dalam array dan menggunakan Strings format().

Kami menggunakan %02Xuntuk mencetak dua tempat ( 02) nilai Heksadesimal ( X) dan menyimpannya dalam rentetan st.

Ini adalah proses yang lebih perlahan untuk penukaran array byte yang besar. Kami dapat meningkatkan kelajuan pelaksanaan secara dramatik menggunakan operasi bait seperti di bawah.

Contoh 2: Tukar Array Byte ke nilai Hex menggunakan operasi bait

 import kotlin.experimental.and private val hexArray = "0123456789ABCDEF".toCharArray() fun bytesToHex(bytes: ByteArray): String ( val hexChars = CharArray(bytes.size * 2) for (j in bytes.indices) ( val v = (bytes(j) and 0xFF.toByte()).toInt() hexChars(j * 2) = hexArray(v ushr 4) hexChars(j * 2 + 1) = hexArray(v and 0x0F) ) return String(hexChars) ) fun main(args: Array) ( val bytes = byteArrayOf(10, 2, 15, 11) val s = bytesToHex(bytes) println(s) )

Keluaran program sama seperti Contoh 1.

Inilah kod Java yang setara: Program Java untuk menukar array bait ke heksadesimal.

Artikel menarik...