我正在尝试使用简单的加密程序将一封信转换为Java中的另一个字母,该程序可以按字母顺序将每个字母转换为一个字母,但字母A除外(A的值将是:&# 34;(0-1)&#34)。因此,字母B将变为A,字母C将变为B,字母R将变为Q,依此类推。
示例:I love fish
将成为H knud ehrg
答案 0 :(得分:1)
您可以使用类似以下算法的方法来完成此任务:
// Our input string.
String input = "I love fish";
// Contains the "encrypted" output string.
StringBuilder encrypted = new StringBuilder();
// Process each character in the input string.
for (char c : input.toCharArray()) {
if (Character.toLowerCase(c) != 'a' && Character.isLetter(c)) {
// If the character is a letter that's not 'a', convert it to the previous letter.
char previous = (char) ((int) c - 1);
encrypted.append(previous);
} else {
// Otherwise just append the original character.
encrypted.append(c);
}
}
// Prints the output to stdout.
System.out.println(encrypted.toString());