思想:通过位运算的异或运算符“^”,把字符串与一个指定的值进行异或运算,从而改变字符串中每个字符的值,这样就可以得到一个加密的字符串。同样我们可以通过异或运算进行解密。
实例:
import java.util.Scanner;
public class DataEncryption {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一串英文或一串加密的字符串:");
String password = scanner.nextLine(); //获取用户输入信息
char[] array = password.toCharArray(); //获取字符数组
for (int i = 0; i < array.length; i++) { //遍历字符数组
array[i] = (char) (array[i]^20000) ; //对每个数组元素进行异或运算
}
System.out.println("加密或解密结果是:");
System.err.println(new String(array)); //输出秘钥
}
}