Cetak Integer dalam Binary Format di Java

1. Gambaran keseluruhan

Dalam tutorial ini, kita akan melihat secara ringkas cara berbeza mencetak bilangan bulat dalam format binari di Java.

Pertama, kita akan melihat konsep. Dan kemudian, kita akan mempelajari beberapa fungsi Java bawaan untuk penukaran.

2. Menggunakan Penukaran Integer ke Perduaan

Di bahagian ini, kami akan menulis kaedah khusus kami untuk menukar bilangan bulat menjadi rentetan format binari di Java. Sebelum menulis kod, mari kita fahami terlebih dahulu cara menukar integer menjadi format binari.

Untuk menukar bilangan bulat n ke dalam format binari, kita perlu:

  1. Simpan selebihnya apabila nombor n dibahagi dengan 2 dan kemas kini nombor n dengan nilai bagi
  2. Ulangi langkah 1 sehingga nombor n lebih besar daripada sifar
  3. Akhirnya, cetak baki dalam urutan terbalik

Mari lihat contoh menukar 7 ke dalam format binari yang setara:

  1. Pertama, bahagikan 7 dengan 2: selebihnya 1, bagi 3
  2. Kedua, bahagikan 3 dengan 2: selebihnya 1, bagi 1
  3. Kemudian, bahagikan 1 dengan 2: selebihnya 1, bagi 0
  4. Dan akhirnya, cetak baki dalam urutan terbalik kerana hasil pada langkah sebelumnya adalah 0: 111

Seterusnya, mari kita laksanakan algoritma di atas:

public static String convertIntegerToBinary(int n) { if (n == 0) { return "0"; } StringBuilder binaryNumber = new StringBuilder(); while (n > 0) { int remainder = n % 2; binaryNumber.append(remainder); n /= 2; } binaryNumber = binaryNumber.reverse(); return binaryNumber.toString(); }

3. Menggunakan Kaedah Integer # toBinaryString

Kelas Integer Java mempunyai kaedah yang dinamakan toBinaryString untuk menukar integer menjadi rentetan setara binari.

Mari lihat tandatangan kaedah Integer # toBinaryString :

public static String toBinaryString(int i)

Ia memerlukan argumen integer dan mengembalikan representasi rentetan binari bagi bilangan bulat itu:

int n = 7; String binaryString = Integer.toBinaryString(n); assertEquals("111", binaryString);

4. Menggunakan Kaedah Integer # toString

Sekarang, mari kita lihat tandatangan kaedah Integer # toString :

public static String toString(int i, int radix)

Kaedah Integer # toString adalah kaedah bawaan di Java yang mengambil dua argumen. Pertama, ia memerlukan bilangan bulat yang akan ditukar menjadi rentetan. Kedua, diperlukan radix yang akan digunakan semasa menukar bilangan bulat menjadi representasi rentetan.

Ia mengembalikan gambaran rentetan input integer di dasar yang ditentukan oleh radix.

Mari gunakan kaedah ini untuk menukar integer ke dalam format binernya menggunakan nilai radix 2:

int n = 7; String binaryString = Integer.toString(n, 2); assertEquals("111", binaryString);

Seperti yang dapat kita lihat bahawa kita melewati nilai radix 2 sambil memanggil kaedah Integer # toString untuk menukar bilangan bulat n menjadi representasi rentetan binernya .

5. Kesimpulan

Sebagai kesimpulan, kami melihat penukaran integer kepada binari. Selanjutnya, kami melihat beberapa kaedah Java bawaan untuk menukar bilangan bulat menjadi rentetan dalam format binari.

Seperti biasa, semua contoh kod ini terdapat di GitHub.