java 如何取前32位全是1的int型数据的后八位

直接&255

因为Integer.toBinaryString(255) 是 8个1。

如果一个负数byte转成int则前面全部会补1,就是24个1和它自己的八位,,于是和八个1相&就是八个1了。

 

举个例子,-1和255

  11111111 11111111 11111111 11111111

&00000000 00000000 00000000 11111111

————————————————————————

=00000000 00000000 00000000 11111111

posted @ 2013-11-21 19:08  剑握在手  阅读(784)  评论(0编辑  收藏  举报
返回顶部↑