所以我对java和编程都很新,我希望有人可以帮助我。另外我也知道代码中有不必要的语法,但是因为它不是我必须为我的作业做的事情,但我修改它以便它将在主要代码上运行在另一个班级内。
我一直坚持这个问题一段时间,我似乎无法弄清楚如何打印出阵列。我认为我的公式得到二进制文件是正确的,但每当我试图打印出数组它会给我:[I @ 5df86e79
int value = 69;
int length =8;
int remainder1 = 0;
int[] bits = new int[length];
int bitstring=0;
while(value>0 && length<32 && length>0){
for(int i=bits.length;i>0;i--){
remainder1=value%2;
value=value/2;
bits[i-1] = bitstring+remainder1;
}
}
System.out.println(bits);
答案 0 :(得分:1)
Java中的数组是一个Object。与原语(int,char等)不同,您必须指定在调用System.out.println()时应如何表示它。
用户定义的对象需要覆盖将被调用的toString()方法。
在这种情况下,由于Arrays已经在Java中定义,因此您只需在整数数组上调用类的toString方法。
答案 1 :(得分:0)
你不能这样做,你必须转换为字符串
Arrays.toString(bits)