Java小案例——对字符串进行加密解密

来源:互联网 发布:mac virtualbox 鼠标 编辑:程序博客网 时间:2024/06/15 05:07
要求:
   *  对用户输入的每个字符的值进行加密,将解密后的字符串输出
   *  对用户输入的已加密字符串进行解密并输出

实现代码:

import java.util.Scanner;/** * 要求: *     1.对用户输入的每个字符的值进行加密,将解密后的字符串输出 *     2.对用户输入的已加密字符串进行解密并输出 * @author Administration * */public class Encryption {    public static void main(String[] args) {        Scanner input = new Scanner(System.in);        System.out.println("请输入一个英文字符串或揭秘字符串");        //获取用户输入         String password = input.nextLine();         //讲获取的字符串转成字符数组         char[] c = password.toCharArray();         //使用for循环给字符数组加密         for(int i=0;i<c.length;i++){             c[i] = (char)(c[i]^20000);         }         //输出加密或者解密结果         System.out.println("加密或者解密之后的结果如下:");         System.out.println(new String(c));    }}

运行结果:

*加密过程:

请输入一个英文字符串或揭秘字符串:I Love You加密或者解密之后的结果如下:乩一乬乏乖久一乹乏乕

*解密过程:

请输入一个英文字符串或揭秘字符串:乩一乬乏乖久一乹乏乕加密或者解密之后的结果如下:I Love You

原理解析:

本例的关键技术是异或运算。原理:如果一个字符(或数值)A与一个数值B进行异或运算得到C,则再用C和B进行以后运算就可以还原得到A。

原创粉丝点击