题解 | #字符串加解密# 格式比较简洁优雅
字符串加解密
https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextLine()) {
String str1 = in.nextLine();
String str2 = in.nextLine();
StringBuilder sb1 = new StringBuilder();
StringBuilder sb2 = new StringBuilder();
for (int i = 0; i < str1.length(); i++) {
sb1.append(encrypt(str1.charAt(i)));
}
for (int i = 0; i < str2.length(); i++) {
sb2.append(decrypt(str2.charAt(i)));
}
System.out.println(sb1);
System.out.println(sb2);
}
}
//加密
public static char encrypt(char c) {
if (c >= 'A' && c <= 'Z') {
c = (char) ((c - 'A' + 1) % 26 + 'a');
} else if (c >= 'a' && c <= 'z') {
c = (char) ((c - 'a' + 1) % 26 + 'A');
} else if (c <= '9') {
c = (char) ((c - '0' + 1) % 10 + '0');
}
return c;
}
//解密
public static char decrypt(char c) {
if (c >= 'A' && c <= 'Z') {
c = (char) ((c - 'A' - 1 + 26) % 26 + 'a');
} else if (c >= 'a' && c <= 'z') {
c = (char) ((c - 'a' - 1 + 26) % 26 + 'A');
} else if (c <= '9') {
c = (char) ((c - '0' - 1 + 10) % 10 + '0');
}
return c;
}
}
查看6道真题和解析
基恩士成长空间 428人发布