密文–>明文
import java.util.Scanner;
// 向左移动3位
public class Demo {
public static void main(String[] args) {
System.out.println("请输入密文:");
Scanner input = new Scanner(System.in);
String str = input.next();
byte[] byteArray = str.getBytes();
char[] c = new char[str.length()]; // 密文
for (int i = 0; i < byteArray.length; i++) {
if ((byteArray[i]-97)%26>2){ // 求余数排除abc
c[i] = (char)(byteArray[i]-3);
}else{ // abc部分
c[i] = (char)((byteArray[i]+26)-3);
}
}
String cc = new String(c); //密文String
System.out.println(cc);
}
}
明文–>密文
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Scanner;
// 向右移动3位
public class Home {
public static void main(String[] args) {
System.out.println("请输入明文:");
Scanner input = new Scanner(System.in);
String str = input.next();
byte[] byteArray = str.getBytes(); // string -> byte
char[] c = new char[str.length()]; // 密文
for (int i = 0; i < byteArray.length; i++) {
if ((byteArray[i]-97)%26<23){ // 求余数排除xyz
c[i] = (char)(byteArray[i]+3);
}else{ // xyz部分
c[i] = (char)((byteArray[i]-26)+3);
}
}
String cc = new String(c); //密文String
System.out.println(cc);
}
}