Rumah >Java >javaTutorial >Apakah itu \'[B\\@\' Enigma: Memahami Notasi Tatasusunan Bait Java?

Apakah itu \'[B\\@\' Enigma: Memahami Notasi Tatasusunan Bait Java?

Linda Hamilton
Linda Hamiltonasal
2024-10-30 04:19:28380semak imbas

 What is the

Mengatasi Enigma "[B@": Memahami Notasi Tatasusunan Bait Java

Perwakilan "[B@" pelik yang ditemui semasa mencetak bait tatasusunan dalam Java sering membingungkan pembangun. Apakah maksudnya dan bagaimanakah kita boleh menghuraikan maksudnya?

Menyahkod Simbolisme

Notasi "[B@" bukan perwakilan perenambelasan kandungan tatasusunan bait melainkan deskriptor objek. Setiap komponen mewakili aspek tertentu:

  • [ : Menandakan jenis tatasusunan.
  • B : Menunjukkan jenis data bait.
  • @ : Mengasingkan pengecam jenis dan ID objek.
  • Digit Hex : ID objek unik atau kod cincang.

Mencetak Kandungan Tatasusunan Dengan Berkesan

Untuk memaparkan kandungan sebenar tatasusunan bait, bukannya ID objek, anda boleh menggunakan pelbagai kaedah:

  • Lelaran dan Penukaran Eksplisit:

    <code class="java">byte[] in = {1, 2, 3, -1, -2, -3};
    for (byte b : in) {
    System.out.print(String.valueOf(b) + " ");
    }</code>
  • Penukaran Rentetan Heksadesimal:

    <code class="java">System.out.println(Base64.getEncoder().encodeToString(in));</code>
  • Penukaran Rentetan Tersuai:

    <code class="java">String byteArrayToString(byte[] in) {
    char out[] = new char[in.length * 2];
    for (int i = 0; i < in.length; i++) {
      out[i * 2] = "0123456789ABCDEF".charAt((in[i] >>> 4) & 15);
      out[i * 2 + 1] = "0123456789ABCDEF".charAt(in[i] & 15);
    }
    return new String(out);
    }</code>

Memahami Nomenklatur JNI

Notasi "[B@" adalah sebahagian daripada sistem yang lebih besar untuk menerangkan jenis dalam JNI (Antaramuka Asli Java). Berikut ialah senarai lengkap:

  • B - byte
  • C - char
  • D - ganda
  • F - apung
  • Saya - int
  • J - panjang
  • Lkelas berkelayakan penuh;;** - nama kelas
  • S - pendek
  • Z - boolean
  • [ - dimensi tatasusunan
  • *(jenis hujah )jenis pemulangan - tandatangan kaedah

Memahami tatatanda ini membolehkan anda menavigasi dunia kompleks perwakilan data Java dengan yakin.

Atas ialah kandungan terperinci Apakah itu \'[B\\@\' Enigma: Memahami Notasi Tatasusunan Bait Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn