题解 | #字符串加解密#
字符串加解密
https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a
import java.util.Scanner;
public class Main {
public static String ENCRY = "encry";
public static String DECRY = "decry";
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextLine()){
String ec = scanner.nextLine();
changeStr(ec,ENCRY);
String dc = scanner.nextLine();
changeStr(dc,DECRY);
}
}
private static void changeStr(String sc, String encryType) {
StringBuilder builder = new StringBuilder();
for (char c : sc.toCharArray()) {
if (Character.isLetter(c)){
if (ENCRY.equals(encryType)) {
if (c=='Z'){
builder.append('a');
} else if(c=='z'){
builder.append('A');
}else if (Character.isLowerCase(c)){
builder.append((char)(c-32+1));
} else {
builder.append((char)(c+32+1));
}
}else {
if (c=='A'){
builder.append('z');
} else if(c=='a'){
builder.append('Z');
}else if (Character.isLowerCase(c)){
builder.append((char)(c-32-1));
} else {
builder.append((char)(c+32-1));
}
}
} else if (Character.isDigit(c)){
if (ENCRY.equals(encryType)) {
if (c == '9') {
builder.append('0');
} else {
builder.append((char) ((int) c + 1));
}
}else {
if (c == '0') {
builder.append('9');
} else {
builder.append((char) ((int) c - 1));
}
}
}
}
System.out.println(builder.toString());
}
}
