java实现异或的代码 java异或怎么用

java怎样用异或进行

异或运算(^)都以二进制数据为基础进行的运算。也就是说当代码中使用到异或运算时,都会先将两个条件进行转换,转换成二进制数据后,再进行运算。异域中同位如果值相同(都是0或者都是1)则为0,不同(一个是0,一个是1)为1。

十年的汉阴网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整汉阴建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“汉阴网站设计”,“汉阴网站推广”以来,每个客户项目都认真落实执行。

例如

int a=4;

int b=6;

int c = a^b;//c的值是a和b的异或。值为2.

过程

1、a的值二进制是

0000 0100 //这里去低8位,因为高位都一致。

2、b的值二进制是

0000 0110

3、异或后

0000 0010 //结果是2

JAVA中如何对一个字符串里的字符做异或运算,例如,字符串A=cghjhgfgsdyugh;第一步

Java代码:

public class test{

public static void main(String[] args) {

String source = "cghjhgfgsdyugh";

int ch = source.charAt(0);

for(int i=1; isource.length(); i++) {

ch ^= source.charAt(i);

}

System.out.printf("%d : %c\n", ch, ch);

}

}

运行测试:

28 :

java异或运算符求详细过程

int 32位,补码存储

int a = 51;

int b = -16;

System.out.println("51  =" + Integer.toBinaryString(a));

System.out.println("-16 =" + Integer.toBinaryString(b));

int c = a^b;

System.out.println("异或    =" + Integer.toBinaryString(c));

System.out.println("即        =" + c);

51  =110011

-16 =11111111111111111111111111110000

异或    =11111111111111111111111111000011

原码为1000。。。111101

即        =-61

用java写一个 字符串异或 的程序

private String twoStringXor(String str1, String str2) {

byte b1[] = str1.getBytes();

byte b2[] = str2.getBytes();

byte longbytes[],shortbytes[];

if(b1.length=b2.length){

longbytes = b1;

shortbytes = b2;

}else{

longbytes = b2;

shortbytes = b1;

}

byte xorstr[] = new byte[longbytes.length];

int i = 0;

for (; i  shortbytes.length; i++) {

xorstr[i] = (byte)(shortbytes[i]^longbytes[i]);

}

for (;ilongbytes.length;i++){

xorstr[i] = longbytes[i];

}

return new String(xorstr);

}


分享题目:java实现异或的代码 java异或怎么用
网页链接:http://pwwzsj.com/article/hijjce.html