题解 | #简单密码#
简单密码
https://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class Main {
static HashMap<String,Character> map = new HashMap<>();//abc--2, def--3, ghi--4, jkl--5, mno--6, pqrs--7, tuv--8 wxyz--9
static {//用hashmap来记录映射关系,方便后续更新和修改
map.put("abc",'2');
map.put("def",'3');
map.put("ghi",'4');
map.put("jkl",'5');
map.put("mno",'6');
map.put("pqrs",'7');
map.put("tuv",'8');
map.put("wxyz",'9');
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String str = in.nextLine();
for (int i = 0; i < str.length();i++) {
System.out.print(String.valueOf(change(str.charAt(i))));
}
}
private static char change(char ch) {
for (Map.Entry entry :map.entrySet()) {
if(entry.getKey().toString().contains(String.valueOf(ch))){
return (char) entry.getValue();
}
}
if(ch >= 'A' && ch < 'Z'){
return (char) (ch - ('A'-'a') +1);
}else if(ch == 'Z'){
return 'a';
}
return ch;
}
}
查看3道真题和解析