这是我写的代码,但它给出了错误的答案,我无法弄清楚为什么
int decimal = 0;
int power= 0;
for(int i=0; i<binary.length; i++)
{
int tmp = binary[i]%10;
decimal+=tmp*Math.pow(2,power);
power++
}
System.out.println(decimal);
答案 0 :(得分:0)
对于任意大小的byte[]
,您可以使用BigInteger
。
public void test(String[] args) {
byte[] b = new byte[] {1,2,3,4,5};
BigInteger bi = new BigInteger(b);
System.out.println(bi.toString(10));
}
如果您的数组是int[]
,那么您可以转换它 - 请参阅How to convert int[] to byte[]。