算法-简单密码
描述
现在有一种密码变换算法。
九键手机键盘上的数字与字母的对应: 1–1, abc–2, def–3, ghi–4, jkl–5, mno–6, pqrs–7, tuv–8 wxyz–9, 0–0,把密码中出现的小写字母都变成九键键盘对应的数字,如:a 变成 2,x 变成 9.
而密码中出现的大写字母则变成小写之后往后移一位,如:X ,先变成小写,再往后移一位,变成了 y ,例外:Z 往后移是 a 。
数字和其它的符号都不做变换。
数据范围: 输入的字符串长度满足
输入描述:
输入一组密码,长度不超过100个字符。
输出描述:
输出密码变换后的字符串
代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String password = sc.nextLine();
String a = "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
String b = "1234567890bcdefghijklmnopqrstuvwxyza22233344455566677778889999";
String result = "";
for(int i=0;i<password.length();i++){
//获取输入密码的每个字符
char ch=password.charAt(i);
//获取密码的字符的位置
int index=a.indexOf(ch);
//获取密码在解密串对应位置的字符
char re=b.charAt(index);
result+=re;
}
System.out.print(result);
}
}
文章介绍了一种基于九键手机键盘的密码变换算法,将小写字母转换为数字,大写字母移位后替换,提供了一个Java代码示例来实现这一过程。

被折叠的 条评论
为什么被折叠?



