(編集済み)
私の問題文: String の各文字に 13 文字を追加して、メソッドに渡された String をエンコードするメソッドを作成します。13 を足した後の文字が 'z' を超える場合は、アルファベットを「ラップ アラウンド」します。次に、エンコードされた文字列を返します。
encodeString("hello") → "uryyb"
encodeString("pie") → "cvr"
encodeString("book") → "obbx"
これは私がこれまでに持っているものです:
public static String encodeString (String input) {
String output;
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
if (c >= 'a' && c <= 'm')
c += 13;
else if (c >= 'n' && c <= 'z')
c -= 13;
output= (" " + (c));
}
return output;
}
これで、渡された文字列の長さに達するまでメソッドがループし続けるように、カウンターを作成する必要があることがわかりました...そして、charAt(index) が文字「n」より小さい場合は、 13 を追加し、それが大きい場合は 13 を減算します。すべてをまとめると、混乱してType mismatch: cannot convert from int to String
.
簡単な説明/回答に注意してください...
* * *だから今私の問題は、出力変数が初期化されていない可能性があると私に言い続けることです