比较好理解的一个方法
import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ String strA = sc.next(); String strB = sc.next(); StringBuilder sb = new StringBuilder(); for(int i = 0;i < strA.length();i++){ char ch = strA.charAt(i); if(ch >= 48 && ch <= 57){ //0-9 if(ch == 57) sb.append(0); else sb.append((char)(ch + 1)); }else if(ch >= 65 && ch<= 90){ //A-Z if(ch == 90) sb.append('a'); else sb.append((char)(ch + 33)); }else if(ch >= 97 && ch <= 122){ //a-z if(ch == 122) sb.append('A'); else sb.append((char)(ch - 31)); } } strA = sb.toString(); sb.setLength(0); for(int i = 0;i < strB.length();i++){ char ch = strB.charAt(i); if(ch >= 48 && ch <= 57){ //0-9 if(ch == 48) sb.append('9'); else sb.append((char)(ch - 1)); }else if(ch >= 65 && ch<= 90){ //A-Z if(ch == 65) sb.append('z'); else sb.append((char)(ch + 31)); }else if(ch >= 97 && ch <= 122){ //a-z if(ch == 97) sb.append('Z'); else sb.append((char)(ch - 33)); } } strB = sb.toString(); sb.setLength(0); System.out.println(strA); System.out.println(strB); } } }