文字列トークンを見て、すべての文字が 1 つずつ移動するようにフォーマットするこのコードを作成しました。文字はすべて小文字で、a から z までです。
したがって、入力が
abcz
の場合、
出力は
bcdaです
今、すべてのアルファベットを配列リストに追加しました。コードは各文字のインデックスを決定し、それに 1 を追加します。z が見つかった場合は、arraylist のインデックスが範囲外にならないように a を出力します。
List<String> letters = new ArrayList<String>();
String alp = "abcdefghijklmnopqrstuvwxyz";
for (int i = 0; i<26; i++)
{
letters.add(Character.toString(alp.charAt(i)));
}
String token = sc.next();
for (int i = 0; i<token.length(); i++)
{
if (letters.get(letters.indexOf(Character.toString(token.charAt(i)))).equals("z"))
{
System.out.print("a");
}
else
{
System.out.print(letters.get(letters.indexOf(Character.toString(token.charAt(i)))+1));
}
}