题解 | #字符串加解密#
字符串加解密
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);
String en = in.nextLine(); //待加密字符串
String de = in.nextLine(); //待解密字符串
System.out.println(encrypt(en));
System.out.println(decrypt(de));
}
public static String encrypt(String en) {
char[] chars = en.toCharArray();
for (int i = 0; i < chars.length; i++) {
chars[i] = encryptWord(chars[i]);
}
return new String(chars);
}
public static char encryptWord(char c) {
if (Character.isLetter(c)) {
if (c == 'Z') {
return 'a';
}
if (c == 'z') {
return 'A';
}
c += 1;
if (c >= 'a' && c <= 'z') {
return Character.toUpperCase(c);
}
return Character.toLowerCase(c);
}
if (c == '9') {
return '0';
}
c += 1;
return c;
}
public static String decrypt(String en) {
char[] chars = en.toCharArray();
for (int i = 0; i < chars.length; i++) {
chars[i] = decryptWord(chars[i]);
}
return new String(chars);
}
public static char decryptWord(char c) {
if (Character.isLetter(c)) {
if (c == 'a') {
return 'Z';
}
if (c == 'A') {
return 'z';
}
c -= 1;
if (c >= 'a' && c <= 'z') {
return Character.toUpperCase(c);
}
return Character.toLowerCase(c);
}
if (c == '0') {
return '9';
}
c -= 1;
return c;
}
}
查看22道真题和解析
网易游戏公司福利 555人发布