zoukankan      html  css  js  c++  java
  • 简单密码再次加密

    假设渊子原来一个BBS上的密码为zvbo9441987,为了方便记忆,他通过一种算法把这个密码变换成YUANzhi1987,这个密码是他的名字和出生年份,怎么忘都忘不了,而且可以明目张胆地放在显眼的地方而不被别人知道真正的密码。
    他是这么变换的,大家都知道手机上的字母: 1–1, abc–2, def–3, ghi–4, jkl–5, mno–6, pqrs–7, tuv–8 wxyz–9, 0–0,就这么简单,渊子把密码中出现的小写字母都变成对应的数字,数字和其他的符号都不做变换,
    声明:密码中没有空格,而密码中出现的大写字母则变成小写之后往后移一位,如:X,先变成小写,再往后移一位,不就是y了嘛,简单吧。记住,z往后移是a哦。

    方法一:使用2张表记录对比;
    方法二:使用一张map表,这个初始化map的时候有点麻烦,需要put太多的数据

    package com.pagination.plus.workTrain;
    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.util.Scanner;
    
    public class Main99 {
        public static void main(String[] args) throws FileNotFoundException {
            String table0 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
            String table1 = "bcdefghijklmnopqrstuvwxyza22233344455566677778889999";
    
            Scanner in = new Scanner(new FileInputStream("D:\JavaData\tmp/input.txt"));
            //Scanner in = new Scanner(System.in);
            while (in.hasNextLine()) {
                String line = in.nextLine();
                StringBuilder outPutBuilder = new StringBuilder();
                for(int i=0;i<line.length();i++){
                    Character c = line.charAt(i);
                    boolean flag = true;
                    for(int j=0;j<table0.length();j++){
                        if(c==table0.charAt(j)){
                            outPutBuilder.append(table1.charAt(j));
                            flag = false;
                            break;
                        }
                    }
                    //其它符号的
                    if(flag){
                        outPutBuilder.append(c);
                    }
                }
                System.out.println(outPutBuilder.toString());
            }
        }
    }
    
    
  • 相关阅读:
    Unique Binary Search Trees 解答
    Unique Paths II 解答
    Unique Paths 解答
    Maximum Subarray 解答
    Climbing Stairs 解答
    House Robber II 解答
    House Robber 解答
    Valid Palindrome 解答
    Container With Most Water 解答
    Remove Duplicates from Sorted List II 解答
  • 原文地址:https://www.cnblogs.com/InternetJava/p/12543181.html
Copyright © 2011-2022 走看看