题解 | 简单密码
简单密码
https://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNext()) { // 注意 while 处理多个 case
String a = in.next();
StringBuffer sf = new StringBuffer(a);
for(int i =0 ; i<sf.length();i++){
//如果是数字
if(Character.isDigit(sf.charAt(i))){
continue;
}
//如果是大写字母
if(Character.isUpperCase(sf.charAt(i))){
//int 类型和Integer类型是 自动装箱与拆箱的关系
// int类型能够强转char,Integer类型不能强转char
if(sf.charAt(i) !='Z'){
int num = Integer.valueOf(Character.toLowerCase(sf.charAt(i)))+1;
sf.setCharAt(i,(char)num);
}else{
sf.setCharAt(i,'a');
}
//或者这个方法sf.setCharAt(i,Character.toChars(num)[0]);
continue;
}
//如果是小写字母
if(Character.isLowerCase(sf.charAt(i))){
if("abc".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'2');
continue;
}
if("def".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'3');
continue;
}
if("ghi".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'4');
continue;
}
if("jkl".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'5');
continue;
}
if("mno".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'6');
continue;
}
if("pqrs".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'7');
continue;
}
if("tuv".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'8');
continue;
}
if("wxyz".contains(String.valueOf(sf.charAt(i)))){
sf.setCharAt(i,'9');
continue;
}
}
}
System.out.println(sf);
}
}
}


