我想將整數轉換爲7位布爾二進制數組。到目前爲止的代碼不工作: 如果我輸入說整數8要轉換,而不是0001000我得到1000000,或說15我應該得到0001111,但我得到1111000.該char數組是不同的長度二進制數組和立場是錯誤的。整數到二進制數組
public static void main(String[] args){
String maxAmpStr = Integer.toBinaryString(8);
char[] arr = maxAmpStr.toCharArray();
boolean[] binaryarray = new boolean[7];
for (int i=0; i<maxAmpStr.length(); i++){
if (arr[i] == '1'){
binaryarray[i] = true;
}
else if (arr[i] == '0'){
binaryarray[i] = false;
}
}
System.out.println(maxAmpStr);
System.out.println(binaryarray[0]);
System.out.println(binaryarray[1]);
System.out.println(binaryarray[2]);
System.out.println(binaryarray[3]);
System.out.println(binaryarray[4]);
System.out.println(binaryarray[5]);
System.out.println(binaryarray[6]);
}
任何幫助表示讚賞。
它是功課嗎?通過2使用除法和餘數。 – kan
您是否嘗試通過手動或使用調試程序遍歷代碼?如果你使用'8'作爲輸入,這兩者都不應該是一個挑戰,並且會讓你看到你的結果開始偏離正確的地方。 –