为了账号安全,请及时绑定邮箱和手机立即绑定

在 Java 中将长对象转换为字符串

在 Java 中将长对象转换为字符串

白衣染霜花 2023-06-04 17:55:58
假设我在 Java 中有这个 Long: Long x=0b01101L;我想用这个把它转换成一个字符串:String str1 = Long.toBinaryString(x);有没有办法将第一个 0 保留在字符串中?我的意思是可以这样:System.out.println(str1);打印01101而不是1101?
查看完整描述

1 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

这不可能。当你声明时Long x = 0b01101L;,你创建了一个long实例,它不包含关于String它所包含的值的表示的信息。是的,它等于十进制的 13,但它也等于繁体中文/日文中的十三,也等于 10 + 3,等等。

如果你想将它转换为String填充到一定数量的零,你可以使用String.format("%16s", Integer.toBinaryString(x)).replace(' ', '0'),但你必须事先知道你想要打印多少位,因为这将始终返回 16 位。

但是,此信息未编码为Long(或long)。如果您需要保留此信息,请将变量声明为 a String xString = "01101";,并在需要进行数值运算时将其转换为longusing 。Long.valueOf(xString, 2);


查看完整回答
反对 回复 2023-06-04
  • 1 回答
  • 0 关注
  • 109 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信