我在这个网站和其他网站搜索,将.4等双值转换为二进制,但是没有有用的答案! 我知道如果数字大于1,程序乘以2,除了1减去它,更多的时间乘以2,依此类推。 帮助我!
double d = .4 ;
double e ;
while ()
{
e = d*2;
if (e>1) {
s[i]= 1;
e=d-1;
} else {
s[i] = 0;
}
System.out.print(s[i]);
}
答案 0 :(得分:3)
在结果上使用Double.doubleToRawLongBits(double)
,然后Long.toBinaryString(long)
:
double d = 0.4;
System.out.println(Long.toBinaryString(Double.doubleToRawLongBits(d)));