byte a=~127; System.out.println(a); a=(byte)(a>>>2); System.out.println(a);
时间: 2024-06-03 19:10:56 浏览: 100
javaSystem.out.println()输出byte[]、char[]异常的问题详析
这段代码的输出结果是什么?
答案是:
-1
63
解释:
对于 byte 类型的数据,它的取值范围是从 -128 到 127。在这段代码中,通过按位取反 ~ 操作,将 127 转换为了 -128,然后存储在变量 a 中。因此,第一个 System.out.println(a) 的输出结果是 -1。
接着,对变量 a 进行无符号右移操作 >>>2,相当于将 a 的二进制值向右移动 2 位。在这个过程中,符号位也被移动,但是由于无符号右移的特性,符号位总是填充 0。因此,这里的结果是将变量 a 的二进制值向右移动 2 位,同时在前面填充 0,得到了一个新的 byte 类型数据,值为 63。最后,第二个 System.out.println(a) 输出结果是 63。
阅读全文