所以我正在研究一个简单的二进制到十进制脚本,并且在乘以幂时可能会丢失精度时发生错误。这是有问题的代码块,它所做的只是将二进制中的 1 和 0 乘以 2 的字符串长度的幂减去循环经过的迭代次数。然后将该结果添加到 z,并重复。
public int decimal(String x){
int z=0;
for(int a=0;a<x.length();a++){
z=z+Integer.parseInt(x.substring(a,a+1))*Math.pow(2,x.length()-a);
}
return z;
}