欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java char类型异或操作小例子 java基础char异或 

程序员文章站 2022-04-08 13:46:45
...

     异或的运算是一个二进制运算: 两个操作数相等为0,不等为11^1=0 0^0=0 1^0=1 0^1=1      

     两个char类型变量做异或操作时,要上转成二进制位,并按位异或,直接输出表达式结果就是数字,要想知道异或后的字符是什么,需要向下转回到char型,例子如下:

public static void main(String[] args) {
        char[] arr = {'我','是','谁'};
        char b = 'c';
       
        for (char c : arr) {
            System.out.println(c);
        }
       
        for(char c:arr){
            int temp = c^b;//异或后的10进制形式
            String tempHexStr = Integer.toHexString(temp);
       
            System.out.println("十进制的异或结果"+temp);
            System.out.println("十六进制的异或结果"+tempHexStr);
            System.out.println("对应字符:"+(char)temp);
        }
    }

 

***************************************************************************************

   结果为:




十进制的异或结果25202
十六进制的异或结果6272
对应字符:扲
十进制的异或结果26188
十六进制的异或结果664c
对应字符:晌
十进制的异或结果35938
十六进制的异或结果8c62
对应字符:豢

 

可结合unicode码表进行验证