时间:2021-05-19
复制代码 代码如下:
import java.util.Scanner;
public class VariableExchange {
public static void main(String[] args){
System.out.println("请输入变量A的值");
Scanner scanner=new Scanner(System.in);
long A=scanner.nextLong();
System.out.println("请输入变量B的值");
Scanner scannerB=new Scanner(System.in);
long B=scannerB.nextLong();
System.out.println("A="+A+"\t"+"B="+B);
System.out.println("执行变量互换...");
A=A^B;
B=B^A;
A=A^B;
System.out.println("A="+A+"\t"+"B="+B);
}
}
其实现是巧用了异或运算。
其原理:
复制代码 代码如下:
a = a ^ b;
b = b ^ a;
a = a ^ b;
即
复制代码 代码如下:
a1=a^b
b=a1^b=(a^b)^b=a
a=a1^b =a1^(a1^b)=a1^a1^b=b
同一变量与另一变量和其异或值异或等于自身。
该原理同样可运用于加密。将其值与key进行异或得到加密后的串,解密操作也只需与key再异或一次。
补充:
Scanner类:
一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。
例1:
复制代码 代码如下:
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
例2:
复制代码 代码如下:
Scanner sc = new Scanner(new File("myNumbers"));
while (sc.hasNextLong()) {
long aLong = sc.nextLong();
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了java使用异或对文件进行加密解密的具体代码,供大家参考,具体内容如下1.使用异或的方式加密文件的原理一个数异或另一个数两次,结果一定是其本
Java简单的加密解密算法,使用异或运算实例1:packagecn.std.util;importjava.nio.charset.Charset;public
简单异或密码(simpleXORcipher)是密码学中中一种简单的加密算法。异或运算:m^n^n=m;利用异或运算的特点,可以对数据进行简单的加密和解密。复制
原理如下,假如: 加密 明文:10101001 密匙:11100011 密文:01001010 得出密文01001010,解密之需和密匙异或下就可以了
一般实现两个变量之间的互换要用第三个变量,这样做可以,但创建新变量,增加了系统开销。如果要交换的变量时两个整数型变量,可以用更高效的方法。例如:^(异或)操作,