• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:avaというか文字列について少し質問です><)

シーザー暗号で文字列をずらすためのクラスのメソッドの作成方法

このQ&Aのポイント
  • シーザー暗号を使用するためのクラスのメソッドを作成する際、アルファベットの小文字26文字のみでループさせる方法について質問しています。
  • 現在のメソッドでは、アルファベットの範囲を超える場合に途中の文字が表示される問題があります。
  • 適切な方法を教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_2
  • ベストアンサー率80% (4/5)
回答No.1

こんな感じでどうでしょう。 int key = 27; String str = "abcdefg"; StringBuffer buf = new StringBuffer(); for(int i=0; i<str.length(); i++) { int a = str.charAt(i) - (key % 26); if(a < 'a') { a = a + 26; } buf.append((char)a); } System.out.println(buf.toString());

izuuuu
質問者

お礼

ありがとうございました。 助かりました。

関連するQ&A