如何解决-128作为Java中的二进制文字
0b10000000
是等于的int
文字(=
0b00000000000000000000000010000000
)+128
。byte
持有8位,不能代表+128
。但是,您可以按照以下步骤实现:
byte notok = (byte) 0b10000000;
解决方法
基于byte
Java 中的类型是带符号的8位
二进制补码整数这一事实,为什么第二种声明字节的方法不起作用?
byte ok = -128;
byte notok = 0b10000000;
我的理解是1000000
应该是,-128
但是java表示notok
上面的变量应该是an int
而不是abyte
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。