java中如何将一个基础数据类型在内存中的表示转成字符串的形式输出 比如一个int型的数123,在内存中占4个字节,以二进制补码的形式表示,toBinaryString()输出的只是一个二进制表示形式,不是我要的答案,我的问题是怎么输出内存中的这32比特,哪位高手能指点迷津,谢谢!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 toBinaryString本来就是补码形式,只不过把前面的0省略了。你可以自己把0加上public class Test { final static String zero="0000000000000000000000000000000000000000000000000000000000000000"; public static void main(String[] args) { System.out.println(int2string(1)); //00000000000000000000000000000001 System.out.println(int2string(-1));//11111111111111111111111111111111 } static String int2string(int n) { String s = Integer.toBinaryString(n); return zero.substring(0, 32-s.length())+s; } static String float2string(float f) { return int2string(Float.floatToIntBits(f)); }}其它整数类型(short,byte,long,char)类似处理对于float和double,先调用Float.floatToIntBits(f)和Double.doubleToLongBits(d)转换成整数表示 请教泛型问题 关于usebean java自动下载文件 有谁知道上海晟峰软件怎么样 请教在JB9中import的问题 访问包的问题 类似C#的委托事件如何写? 一个初学者的问题 请问java里怎么用goto语句??举个例子,好吗?谢谢 java小程序 帮忙看下这段简单的程序为什么不是我想要的结果 一个for 循环的小问题
final static String zero="0000000000000000000000000000000000000000000000000000000000000000"; public static void main(String[] args)
{
System.out.println(int2string(1)); //00000000000000000000000000000001
System.out.println(int2string(-1));//11111111111111111111111111111111 } static String int2string(int n) {
String s = Integer.toBinaryString(n);
return zero.substring(0, 32-s.length())+s;
} static String float2string(float f) {
return int2string(Float.floatToIntBits(f));
}
}其它整数类型(short,byte,long,char)类似处理
对于float和double,先调用Float.floatToIntBits(f)和Double.doubleToLongBits(d)转换成整数表示