解题思路:
1:将大写字母转化成小写字母,然后向后移一位,有两种思路:
第一种:将得到的字符加1然后转成字符串,最后将字符串转为成小写;
char c = (char) ((chars[i]) + 1); String s = String.valueOf(c).toLowerCase(Locale.ROOT);
第二种 将得到的字符-32直接得到小写的字符
char c = (char) ((chars[i]) + 'b' - 'A');
- 将小写字母转化成相对应的数字
- 数字不变
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Locale;
/**
* @author Administrator
*/
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
String str = null;
if (null != (str = bf.readLine())) {
char[] chars = str.toCharArray();
for (int i = 0; i < chars.length; i++) {
if ('A' <= chars[i] && chars[i] < 'Z') {
char c = (char) ((chars[i]) + 1);
String s = String.valueOf(c);
sb.append(s.toLowerCase(Locale.ROOT));
}else if (chars[i] == 'Z') {
sb.append('a');
}else if (chars[i] >= 'a' && chars[i] <= 'c'){
sb.append('2');
}else if (chars[i] >= 'd' && chars[i] <= 'f'){
sb.append('3');
}else if (chars[i] >= 'g' && chars[i] <= 'i'){
sb.append('4');
}else if (chars[i] >= 'j' && chars[i] <= 'l'){
sb.append('5');
}else if (chars[i] >= 'm' && chars[i] <= 'o'){
sb.append('6');
}else if (chars[i] >= 'p' && chars[i] <= 's'){
sb.append('7');
}else if (chars[i] >= 't' && chars[i] <= 'v'){
sb.append('8');
}else if (chars[i] >= 'w' && chars[i] <= 'z'){
sb.append('9');
}else {
sb.append(chars[i]);
}
}
}
System.out.println(sb.toString().trim());
// dkgss87z9u52n9860pt96xsv9d9y5ox17861g6g67o2v87t
}
}

京公网安备 11010502036488号