JAVA中按位异或是什么意思? 不太理解,请指教,谢谢!

如题所述

异或运算没有听过,不过位与运算就有,它的原理是:先把十进制(或N进制)转换成二进制,再分别同位进行与运算,比如:

12&5(java中位与运算是用&符号表示的)

即:12 = 11000
& 5 = 01001
--------------------
= 11001

位异或运算或许是把它们进行异或吧。

PS楼下不能这么说,有些算法还得用到这些位操作,用得妙的还真叫人拍案叫绝
温馨提示:内容为网友见解,仅供参考
第1个回答  2006-02-28
异或就是
1异或1 = 0
1异或0 = 1
0异或0 = 0

按位异或就是将两个数按二进制表示,每一位就都变成了0或1,然后再将两个数的每一位挨个进行异或运算。
第2个回答  2006-02-28
我坦白的告诉你,除了你去搞破译和加密有用之外,这些东西一点用都没有,建议你还是好好把精力放在有用的地方。
第3个回答  2013-04-12
^操作符,主要用于位运算。
例如a^b;

JAVA中按位异或是什么意思? 不太理解,请指教,谢谢!
异或运算没有听过,不过位与运算就有,它的原理是:先把十进制(或N进制)转换成二进制,再分别同位进行与运算,比如:12&5(java中位与运算是用&符号表示的)即:12 = 11000 & 5 = 01001 --- = 11001 位异或运算或许是把它们进行异或吧。PS楼下不能这么说,有些算法还得用到这些位操...

java中按位异或与逻辑异或的区别
位异或指:异或运算^,异或运算它都是以二进制数据为基础进行运算,1^1=00^0=11^0=10^1=1

如何理解按位异或求助什么是按位或什么是按位异或什么是按位与
1、按位或:如果两个相应的二进制位有一个为1,则该结果为1,否则为0。2、2、按位异或(^):如果两个相应的二进制位值不同则为1,否则为0。3、3、按位与(&):如果两个相应的二进制位都为1,则该位的结果值为1,否则为0。4、按位的各种运算,结合图形看起来是不是还挺简单,不过这些都...

java中字符串异或的原理
存在按位异或,就是根据数据在内存中的二进制数的存放形式进行异或操作,但是不存在字符串的异或 如果在内存中的数据:01010101和10101010异或,结果就是11111111,然后再将 11111111转换成相应的数据输出结果 注意:Java中没有字符串的异或、与、或、非操作,不是C语言那样(除非是你自己定义异或操作)...

java:^ 的意思?
Java中的位运算符!用来做按位异或运算的。异或指的是相同位值相同异或结果为0,相同位异或值不同结果为1。例如:int i = 2^3;首先需要将数字转换成二进制数,然后进行运算。2的二进制数是10 3是11 10 11 ^ --- 01 所以,i中的结果是数字1。

求助!什位异或,什么是按位与?
位运算在计算机科学中是非常基础且重要的概念,主要包括按位或(|)、按位异或(^)和按位与(&)。以下是它们的简单解释:1. 按位或(|):这种运算符比较两个二进制位,如果至少有一个为1,结果位就为1,否则为0。这种操作直观地反映了“或”的逻辑,即只要有一个条件满足,结果即为真。2. 按...

c++里面按位异或是什么意思?
二进制计算的一种,相同则为0,不同则为1,不懂去网上搜一下“按位异或”应该能找到详细资料,不行的话继续追问

java中异或是怎样算的
异或运算(^)都以二进制数据为基础进行的运算。也就是说当代码中使用到异或运算时,都会先将两个条件进行转换,转换成二进制数据后,再进行运算。异域中同位如果值相同(都是0或者都是1)则为0,不同(一个是0,一个是1)为1。例如 int a=4;int b=6;int c = a^b;\/\/c的值是a和b的异...

JAVA字符串异或
存在按位异或,就是根据数据在内存中的二进制数的存放形式进行异或操作,但是不存在字符串的异或 如果在内存中的数据:01010101和10101010异或,结果就是11111111,然后再将 11111111转换成相应的数据输出结果 注意:Java中没有字符串的异或、与、或、非操作,不是C语言那样(除非是你自己定义异或操作)...

按位异或运算符是什么意思
1异或0=1,1异或1=0。2、C语言位运算符:与、或、异或、取反、左移和右移。  3、位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。

相似回答