题解 | #字符串加解密#
字符串加解密
https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void edCrypt(char[] chars, char num1, char num2, char num3,
char num4, char num5, char num6, int one) {
for (int i = 0; i < chars.length; ++i) {
if (Character.isDigit(chars[i])) {
if (chars[i] == num1) {
chars[i] = num2;
} else {
chars[i] = (char) (chars[i] + one);
}
} else if (Character.isLowerCase(chars[i])) {
if (chars[i] == num3) {
chars[i] = num4;
} else {
chars[i] = (char) (chars[i] - ('a' - 'A') + one);
}
} else {
if (chars[i] == num5) {
chars[i] = num6;
} else {
chars[i] = (char) (chars[i] + ('a' - 'A') + one);
}
}
}
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNext()) { // 注意 while 处理多个 case
char[] encryptChars = in.nextLine().toCharArray();
char[] decryptChars = in.nextLine().toCharArray();
char num1 = '9', num2 = '0', num3 = 'z', num4 = 'A', num5 = 'Z', num6 = 'a';
edCrypt(encryptChars, '9', '0', 'z', 'A', 'Z', 'a', 1);
edCrypt(decryptChars, '0', '9', 'a', 'Z', 'A', 'z', -1);
System.out.println(String.valueOf(encryptChars));
System.out.println(String.valueOf(decryptChars));
}
}
}
查看11道真题和解析
巨人网络成长空间 53人发布