^(插入符号)运算符在Java中起什么作用?

当我尝试这样做时:

int a = 5^n;

...它给我:

当n = 5时,返回0 当n = 4时,返回1 当n = 6时,返回3

...所以我猜它不会取幂。但那是什么呢?


当前回答

要执行幂运算,可以使用Math。战俘相反:

https://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Math.html#pow%28double,%20double%29

其他回答

它是java中的位xor运算符,当不同值时结果为1(即1 ^ 0 = 1),当相同值时结果为0(即0 ^ 0 = 0)。

^ = (按位异或)

描述

如果二进制异或操作符在一个操作数中设置,则复制位。

例子

(A ^ B)会给出49,即0011 0001

它是按位异或,Java没有求幂运算符,你必须使用Math.pow()来代替。

在Python等其他语言中,您可以执行10**2=100,尝试一下。

正如其他答案所述,它是“异或”(XOR)操作符。有关Java中位操作符的更多信息,请参见:http://java.sun.com/docs/books/tutorial/java/nutsandbolts/op3.html