java语言 百文网手机站

Java“异或” 运算符

时间:2022-04-14 15:53:31 java语言 我要投稿

Java“异或” 运算符

  导语:异或运算符的符号为^,当对两个整数进行异或操作计算时,是对其相应的二进制数进行的异或运算。下面让我们了解一下Java的异或运算符。

  其规则为:对于每一二进制位,0^0 =0, 0^1=1, 1^0=1, !^1=0。

  可简单理解成:相同位为0,不同为为1(或两个数字相加,但不考虑进位)。

  因此,又常称为按位异或。

  异或运算具有如下几个特征:

  1.0^任何数 = 任何数;

  2.任何数 ^ 任何数 = 0;

  3.具有交换律:a^b = b^a;

  4.具有结合律:a^b^c = a^(b^c)。

  因此,有时会见到异或运算出现在如下两个场景中:

  1.不经过第三方变量直接交换两个整数的值。

  1 public class ExchangeNumber {

  2

  3 public static void main(String[] args) {

  4

  5 int a = 12;

  6 int b = 7;

  7 System.out.println("原数 a=" + a + " b=" + b);

  8 a = a ^ b;

  9 b = a ^ b;

  10 a = a ^ b;

  11 System.out.println("交换后的值为 a=" + a + " b=" + b);

  12 }

  13

  14 }

  2. 在网络传输过程中,通过异或对数字进行简单加密,接收后相应解密。

  如:需要加密的数字为a,秘钥为b,则加密后的结果c=a^b;

  接收后,对c进行解密。c^b = a^b^b = a^(b^b) = a^0 = a。

  拓展:java语言运算符的使用

  赋值运算符的使用

  =、 +=、-=、*=、/=、%=

  算术运算符的使用

  算术运算就是咱们生活中常见的加、减、乘、除

  关系(比较)运算符的使用

  关系运算又称比较运算,用来对数据进行比较,通过比较得到一个boolean类型的结果。比较运算有: > 、>= 、 < 、<=、 ==(注意和赋值运算符的区别)、!=

  逻辑运算符的使用:

  &&(有短路功能) : 两个条件同时为true时结果才为true

  &: 没有短路功能,

  ||(有短路功能) : 两个条件中只要有一个为true则结果为true

  | : 没有短路功能

  ! : 非真即假,非假即真

  自增(++),自减(--)的使用

  自增:++

  后自增:如果变量有参与运算,先拿变量当前的.值进行运算,然后再++

  前自增: 先将变量的值进行自增,再参与运算

  (自减的原理同自增)

  运算符的优先级别

  最高的优先级:小括号,即( )

  最低的优先级:赋值运算符,即=

  优先级顺序:!>算术运算符>比较运算符>&&>||

【Java“异或” 运算符】相关文章:

Java运算符10-04

java语言运算符10-02

java函数及运算符10-02

Java中运算符的使用09-29

Java 2.1 java基本类型的转换和运算符09-27

JAVA程序语言中的运算符10-01

Java的运算符和表达式09-26

c语言算术运算符10-06

C语言条件运算符01-19

C语言关系运算符04-02