1. 首页 > 科技

java 异或 字符串找不同 是怎么实现的?? java将字符串转换为数字

java 异或 字符串找不同 是怎么实现的??java将字符串转换为数字

JAVA中字符串异或

异或:不同为1,相同为0

JAVA中两个长度不一样的字符串怎么异或

按短的,结束就完成。

要按长的,就让短的循环。

具体看需求

java实现一个功能,找出字符串中,不同的字符的个数?

代码如下,我测试过了。。。。希望满足你的要求 import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; public class Test { public static void main(String[] args){ String s1 = "AABBC"; String s2 = "ABBCC"; List sub1 = new ArrayList();//保存s1的子串 List sub2 = new ArrayList();//保存s2的子串 Set result = new HashSet();//保存相同的子串 //求s1的子串 for(int i = 1;i

不同长度的字符串是如何进行异或运算的

只是循环其中的每一个字符进行异或操作。

给你个以前写过的程序,能仔细看下就清楚了:

#include

#include

#include

main()

{

void sc(char *fp,char *key,int Flen,int Klen);

FILE *fp;

char *pBuf,filename[20],key[20],ch;

printf("请输入选择:A、加密 B、解密 C退出\n");

ch=getchar();

while(ch!='c'&&ch!='C')

{

if(ch=='a'||ch=='A'||ch=='b'||ch=='B')

{

printf("请输入要打开的文件名:\n");

scanf("%s",filename);

if((fp=fopen(filename,"rb"))==NULL)

{printf("无法打开文件,请注意输入后缀!\n");

exit(0);

}

fseek(fp,0,SEEK_END);

int len=ftell(fp);

pBuf=new char[len+1];

rewind(fp);

fread(pBuf,1,len,fp);

pBuf[len]=0;

printf("%s\n",pBuf);

fclose(fp);

printf("请输入加密/解密的密码:\n");

scanf("%s",key);

sc(pBuf,key,len,strlen(key));

printf("请输入保存加密文件的文件名:\n");

scanf("%s",filename);

if((fp=fopen(filename,"wb"))==NULL)

{printf("无法保存文件,请注意磁盘是否已满!\n");

exit(0);

}

else

fwrite(pBuf,1,len,fp);

fclose(fp);

printf("请输入选择:A、加密 B、解密 C退出\n");

}

else {

printf("输入错误,请重新输入\n");

}

ch=getchar();

ch=getchar();

}

}

void sc(char *fp,char *key,int Flen,int Klen)

{int i,j,k;

for(i=0;i

for(j=i,k=0;k

fp[j]^=key[k]; //在这里,异或操作,加密文件

fp[i]='\0';

printf("%s\n",fp);

}