为了账号安全,请及时绑定邮箱和手机立即绑定

^操作符在Java中做什么?

^操作符在Java中做什么?

汪汪一只猫 2019-06-26 15:50:54
^操作符在Java中做什么?是什么功能?^(卡雷特)操作员服务于Java?当我尝试这个:int a = 5^n;.它给了我对于n=5,返回0对于n=4,返回1对于n=6,返回3.所以我想它不会进行指数运算但那又是什么呢?
查看完整描述

3 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

正如许多人已经指出的,这是异或接线员。许多人也已经指出,如果你想要指数,那么你需要使用马蒂-波夫.

但我认为值得注意的是^只是被统称为按位运算符的一系列运算符之一:

Operator    Name         Example     Result  Descriptiona & b       and          3 & 5       1      
 1 if both bits are 1.a | b       or           3 | 5       7       1 if either bit is 1.a ^ b       xor          3 ^ 5       6       1 if both bits are different.~a          not          ~3          -4      Inverts the bits.n << p      left shift   3 << 2      12      Shifts the bits of n left p positions. Zero bits are shifted into the low-order positions.n >> p      right shift  5 >> 2      1       Shifts the bits of n right p positions. If n is a 2's complement signed number, the sign bit is shifted into the high-order positions.n >>> p     right shift  -4 >>> 28   15      Shifts the bits of n right p positions. Zeros are shifted into the high-order positions.

从…这里.

当您需要读取和写入整数时,这些运算符会派上用场,在这些整数中,应该将单个位解释为标志,或者当整数中的特定范围的位具有特殊意义时,您只想提取这些位。您可以每天进行大量编程,而不需要使用这些操作符,但是如果您必须在位级处理数据,那么对这些操作符的了解是非常宝贵的。


查看完整回答
反对 回复 2019-06-26
?
暮色呼如

TA贡献1853条经验 获得超9个赞

异或算子规则=>

0 ^ 0 = 01 ^ 1 = 00 ^ 1 = 11 ^ 0 = 1

4、5和6的二进制表示:

4 = 1 0 0 5 = 1 0 16 = 1 1 0

现在,在5和4上执行XOR操作:

     5 ^ 4 => 1  0  1   (5)
              1  0  0   (4)
            ----------
              0  0  1   => 1

同样,

5 ^ 5 => 1   0   1    (5)
         1   0   1    (5)
       ------------
         0   0   0   => (0)5 ^ 6 => 1   0   1  (5)
         1   1   0  (6)
        -----------
         0   1   1  => 3


查看完整回答
反对 回复 2019-06-26
  • 3 回答
  • 0 关注
  • 864 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信