1 import java.util.Arrays; 2 //把十進制轉換為二進制的位 3 public class ToBinBit 4 { 5 public static void main(String[] args) 6 { 7 //1.假設現在有一個int為20,需要轉換為二進制輸出 8 int number = 20; 9 //2.需要一個長度為32的int數組來存儲結果二進制 10 int[] bit = new int[32]; 11 //3.循環,把原始數除以2取得余數,這個余數就是二進制數,原始的數等於商。 12 //商如果不能再除以二,結束循環。 13 14 for(int i = 0; number > 1; i++) 15 { 16 //取得除以2的余數 17 int b = number % 2; 18 //數字賦值為除以2的商 19 number = number / 2; 20 21 bit[i] = b; 22 23 if( number < 2 ) 24 { 25 //已經不能再把數除以2,就把上直接放到數組的下一位 26 bit[i + 1] = number; 27 } 28 } 29 30 //4.翻轉數組 31 for(int i = 0; i < bit.length / 2;i++) 32 { 33 int temp = bit[i]; 34 //第一個數的值設置為最后一個數的值 35 //第二次的時候,i是1,把第二個數的值,賦值為倒數第二個 36 bit[i] = bit[ bit.length - 1 - i ]; 37 bit[ bit.length - 1 - i ] = temp; 38 } 39 40 System.out.println( Arrays.toString(bit) ); 41 42 } 43 }