import java.util.Scanner;


public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        StringBuilder sb  = new StringBuilder();
        for(char c : s.toCharArray()){
            if(Character.isLowerCase(c)){
                switch(c){
                    case'a':case'b':case'c':
                        sb.append(2);
                        break;
                    case'd':case'e':case'f':
                        sb.append(3);
                        break;
                    case'g':case'h':case'i':
                        sb.append(4);
                        break;
                    case'j':case'k':case'l':
                        sb.append(5);
                        break;
                    case'm':case'n':case'o':
                        sb.append(6);
                        break;
                    case'p':case'q':case'r':case's':
                        sb.append(7);
                        break;
                    case't':case'u':case'v':
                        sb.append(8);
                        break;
                    case'w':case'x':case'y':case'z':
                        sb.append(9);
                        break;
                        }
            }else if(Character.isUpperCase(c)){
                c  = Character.toLowerCase(c);
                if(c == 'z'){
                    sb.append('a');
                }else{
                sb.append((char)(c+1));
                }
            }
            if(Character.isDigit(c)){
                sb.append(c);
            }
        }
        s = sb.toString();
        System.out.println(s);
    }
}

这道题运用的就是Character库中的isLowercase,isUpperCase,isDigit函数来判断。然后呢字符后移一位,就需要(char)(c+1)但是如果c是z的话就要另算了