当前位置:系统粉 > 电脑问答 > 其他问答 > “按位异或”运算符的问题(Java)

“按位异或”运算符的问题(Java)

提问者:小颜颜i  |  浏览 次  |  提问时间:2017-03-08  |  回答数量:2

“按位异或”运算符的问题(Java) 下面这个程序用到了“按位异或”运算符: class E{ public static void main(String args[ ]){chara1='十' ,a2='点' ,a3='进' ,a4='攻' ;char secret='8' ;a1=(char) (a1^secret);a2=(char) (a2^secret);a3=(char) (a3^secret);a4=(char) (a4^secret);System.out.println(\"密文:\"+a1+a2+a3+a4);a1=(char) (a1^secret);a2=(char) (a2^secret);a3=(char) (a3^secret);a4=(char) (a4^secret);System.out.println(\"原文:\"+a1+a2+a3+a4);}}谁能帮我解释一下这个程序,它到底是什么意思,程序是如何循环运行的?“按位异或”

已有2条答案
异地恋我幸福

异地恋我幸福

回答数:9  |  被采纳数:14

2017-03-08 04:35:06
按位“异或”运算符 (^)

对两个表达式执行按位 XOR 运算。

expression1 ^ expression2 参数
expression1
任何数值表达式。

expression2
任何数值表达式。

备注
^ 运算符将参数强制为匹配的数据类型。^ 运算符随后查看两个表达式的二进制表示形式的值,并执行按位“异或”运算。参数的数据类型决定此运算符所返回的数据类型。

此运算的结果如下所示:

复制代码
0101 (expression1)
1100 (expression2)
----
1001 (result)当且仅当只有一个表达式的某位为 1 时,结果中的该位才为 1。否则,结果中的该位为 0。
赞 0
遆夏

遆夏

回答数:128  |  被采纳数:113

2017-03-08 05:38:26
谢谢楼上的 老子终于看懂它的循环了!
赞 12
解决方法
版权信息

Copyright @ 2011 系统粉 版权声明 最新发布内容 网站导航