Java ASCII编码

Java ASCII encoding

我有一个关于 ASCII 和编码的快速问题。我希望获取用户的输入 - 例如:"cat" - 并将其转换为代码。代码如下:

  1. 所有小写字母都转换为大写字母。
  2. 编码消息中的第一个字母存储为它的 ASCII 代码值。
  3. 所有后续字母都表示为当前字母与前一个字母之间的偏移量。

例如:"cat" = 67 -2 19 因为 "C" = 67,"A" 与 "C" 相差 -2 个字母,而 "T"距离 "A" 有 19 个字母。任何帮助将不胜感激!

Scanner input = new Scanner(System.in);
String s = input.next().toUpperCase();
int ascii = s.charAt(0);
System.out.println(ascii);
for (int i = 1; i < s.length(); i++) {
    ascii = s.charAt(i - 1);
    System.out.println(s.charAt(i) - ascii);
}
  1. 要转换为大写字母,可以使用 toUpperCase() 方法,该方法 returns 字符串全部为大写字母。
  2. 要获取字母的 ASCII 码,您只需创建一个整数并为其分配所需的字符(在本例中为字符串的第一个字母,因此 int ascii = s.charAt(0);)。
  3. 要获取偏移量,您可以使用从 1(第二个字母)开始的 for 循环,在其中获取前一个字符的 ASCII 代码并将其从当前字符中减去。