zoukankan      html  css  js  c++  java
  • Java小案例——对字符串进行加密解密

     要求:
       *  对用户输入的每个字符的值进行加密,将解密后的字符串输出
       *  对用户输入的已加密字符串进行解密并输出


    实现代码:

    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。
  • 相关阅读:
    475.Heaters java
    爬取豆瓣新热门电影数据
    ORALCE逻辑存储结构
    UnicodeDecodeError: 'utf-8' codec can't decode byte 问题
    ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
    oracle和mysql区别
    ORACLE ITL事务槽
    oracle的锁种类知识普及
    仅主机、NAT、桥接模式
    oracle11g和12c区别
  • 原文地址:https://www.cnblogs.com/Mus-Li/p/6936323.html
Copyright © 2011-2022 走看看