题解 | #简单密码#
简单密码
http://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac
解题思路
使用密码本概念,明文和密文
实现代码
import java.util.Scanner;
/**
* @author saint
* @date 2022/5/31
* @info 简单密码
**/
public class Main {
//把密码中出现的小写字母都变成九键键盘对应的数字,而密码中出现的大写字母则变成小写之后往后移一位
public static void main(String[] args) {
//使用明文字典和密文字典
char plainBook [] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789".toCharArray();
char cipherBook [] ="bcdefghijklmnopqrstuvwxyza222333444555666777788899990123456789".toCharArray();
Scanner sc = new Scanner(System.in);
String password = sc.nextLine();
char[] arr = password.toCharArray();
int len = arr.length;
for(int i=0; i<len; i++){
//小写字母转数字
if(arr[i] >= 'a' && arr[i] <= 'z'){
arr[i] = cipherBook[arr[i] - 'a' + 26];
}
//大写字母转小写
if(arr[i] >= 'A' && arr[i] <= 'Z'){
arr[i] = cipherBook[arr[i] - 'A'];
}
//数字和其他不用转
}
System.out.println(new String(arr));
}
}