private final static long B = 0xefcdab89打印出来是负值

桐桐蔓蔓 2016-01-15 11:21:16
Java中long的范围是-2^64~2^64-1,即-9223372036854775808到9223372036854775807
十六进制0xefcdab89用在线转换器转换为10进制,结果是4023233417

private final static long B = 0xefcdab89;
System.out.println(B);
为什么打印出来的结果是-271733879?
...全文
118 3 打赏 收藏 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
空心兜兜 2016-01-15
  • 打赏
  • 举报
回复
丢精度了,后面应该加L
scmod 2016-01-15
  • 打赏
  • 举报
回复
末尾加个l....
桐桐蔓蔓 2016-01-15
  • 打赏
  • 举报
回复
哇塞,真是如此,问题解决了,谢谢各位!

51,407

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧