我在獲取二進制文件時遇到了問題。我不知道什麼是錯的。二進制數字總是以亂碼結束。還有一些部分像new int[31]
事情來自硬件,但我無法繞過打印實際的二進制文件。十進制到java中的二進制文件
public class DectoBinary {
public static void main(String[]args) {
Scanner CONSOLE = new Scanner(System.in);
System.out.print("Please enter a nonnegative integer: ");
int value = CONSOLE.nextInt();
while (value < 0) {
System.out.print("number outside range.");
System.out.print
("Please enter a nonnegative interger more than 0: ");
value = CONSOLE.nextInt();
}
int[] intArray = new int[31];
decimalToBinary(value, intArray);
System.out.println(value + "" + intArray);
}
public static int[] decimalToBinary(int value, int[]intArray) {
int i = 0;
while (value != 0) {
if (value % 2 == 1)
intArray[i] = 1;
else
intArray[i] = 0;
value /= 2;
i++;
}
return intArray;
}
}
您嘗試了哪些輸入以及輸出了什麼? – sarnold 2012-04-25 03:03:04
您使用的是哪個版本的java?您自己實施該方法是強制性的嗎?這是因爲Java 7擁有你想要的開箱即用功能。 – 2012-04-25 03:05:00
我已經嘗試了10和100這樣的小數字作爲輸入,但intArray ususally變成像[I @ 1ced821 – user1239224 2012-04-25 03:05:36