Java案例——数字加密

public static void main(String[] args) {
        /*
        * 加密方式是,将每位数都加上5,再对10取余,最后将所有数字反转,得到加密数字
        * */
        int[] origin = new int[6];
        int num = 0;
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个0-9之内的数字");
        for (int j = 0;j<origin.length;j++){
            num = scanner.nextInt();
            if(num<0 || num>9){
                System.out.println("您输入的值有误,请重新输入");
                --j;
             }else {
                origin[j] = num;
             }
        }
        //调用加密方法
        int[] encryption = encryption(origin);
        for (int i : encryption){
            System.out.print(i);
        }

        System.out.println();

        //调用解密方法
        int[] decipherin = decipherin(encryption);
        for (int i: decipherin){
            System.out.print(i);
        }
    }
    //加密方法
    public static  int[] encryption(int[] origin){
        int[] encryption = new int[origin.length];
        int temp = 0;
        for (int i=0;i<origin.length;i++){
            temp = origin[i];
            temp+=5;
            temp%=10;
            encryption[origin.length-1-i]=temp;
        }
        return encryption;
    }
    //解密方法
    public  static  int[] decipherin(int[] encryption){
        int[] origin = new int[encryption.length];
        for (int i=0;i<encryption.length;i++){
            if (encryption[i]-5<0){
                origin[encryption.length-1-i]=(encryption[i]+10)-5;
            }else {
                origin[encryption.length-1-i]=encryption[i]-5;
            }
        }
        return  origin;
    }


版权声明:本文为ttwxd原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。