美文网首页
Java位运算

Java位运算

作者: 二二二二呆 | 来源:发表于2018-05-06 19:22 被阅读0次

    Java常用的位运算:

    带符号右移 >>

    对于正数, 带符号右移 >> 会把所有的位右移,并在最前面补0
    对于负数, 带符号右移 >> 会把所有的位右移,并在最前面补1
    比如 int i= 5; int类型在Java中是4个字节,也就是32位。
    他的二进制表示是 :
    0000 0000 0000 0000 0000 0000 0000 0101
    右移i>>2,对于正数:
    0000 0000 0000 0000 0000 0000 0000 0001

    带符号左移

    对于正数, 带符号右移 >> 会把所有的位右移,并在最前面补0
    对于负数, 带符号右移 >> 会把所有的位右移,并在最前面补1

    无符号右移>>>

    如果是一个负数,那么对应的二进制的第一位是1
    无符号右移>>>会把第一位的1也向右移动,导致移动后,第一位变成0
    这样就会使得负数在无符号右移后,得到一个正数

    相关文章

      网友评论

          本文标题:Java位运算

          本文链接:https://www.haomeiwen.com/subject/crnurftx.html