^(插入符号)运算符在Java中起什么作用?
当我尝试这样做时:
int a = 5^n;
...它给我:
当n = 5时,返回0 当n = 4时,返回1 当n = 6时,返回3
...所以我猜它不会取幂。但那是什么呢?
^(插入符号)运算符在Java中起什么作用?
当我尝试这样做时:
int a = 5^n;
...它给我:
当n = 5时,返回0 当n = 4时,返回1 当n = 6时,返回3
...所以我猜它不会取幂。但那是什么呢?
当前回答
它是按位异或,Java没有求幂运算符,你必须使用Math.pow()来代替。
其他回答
在Python等其他语言中,您可以执行10**2=100,尝试一下。
异或运算符规则=>
0 ^ 0 = 0
1 ^ 1 = 0
0 ^ 1 = 1
1 ^ 0 = 1
4、5和6的二进制表示:
4 = 1 0 0
5 = 1 0 1
6 = 1 1 0
现在,对5和4执行异或操作:
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
它是java中的位异或运算符,当一个数字以二进制形式写成时,它的结果是1表示不同的位值(即1 ^ 0 = 1),0表示相同的位值(即0 ^ 0 = 0)。
例:-
用你的例子:
5的二进制表示是0101。 4的二进制表示是0100。
定义按位异或的一个简单方法是,在两个输入数字不同的地方,结果都是1。
0101 ^ 0100 = 0001 (5 ^ 4 = 1).
它是按位异或,Java没有求幂运算符,你必须使用Math.pow()来代替。
它是XOR位操作符。