当前位置: 技术问答>java相关
问两个非常简单的题目,是人都会答啊
来源: 互联网 发布时间:2015-01-31
本文导语: byte b1=-5; int i=0xff; byte b2=(byte)(b1^i); b2++; System.out.println(b2); 这个输出结果是5,为什么不是6呢? short s=0x00FD; byte b=(byte)s; System.out.println("b=" +b); 这个输出结果是-3,为什么不是-2呢? 谢谢! ...
byte b1=-5;
int i=0xff;
byte b2=(byte)(b1^i);
b2++;
System.out.println(b2);
这个输出结果是5,为什么不是6呢?
short s=0x00FD;
byte b=(byte)s;
System.out.println("b=" +b);
这个输出结果是-3,为什么不是-2呢?
谢谢!
int i=0xff;
byte b2=(byte)(b1^i);
b2++;
System.out.println(b2);
这个输出结果是5,为什么不是6呢?
short s=0x00FD;
byte b=(byte)s;
System.out.println("b=" +b);
这个输出结果是-3,为什么不是-2呢?
谢谢!
|
第二个:
b=0xFD: 1111 1101
b=0xFD: 1111 1101
|
5= 00000101(binary)
-5 = 11111011
b1^i = 00000100
b2++ = 101 = 5
fd = 11111101=-3
-5 = 11111011
b1^i = 00000100
b2++ = 101 = 5
fd = 11111101=-3
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。