我是新來的Java,並具有使用字符串和麻煩字符的分配,當他們 交織在一起。這裏凱撒程序不會運行,因爲必須比較 字符和字符串之間的分配。請幫助 謝謝。的Java加密凱撒代碼
class Caesar {
public static char encrypt(String str) {
String result = "";
String x;
for (String ch : str) {
x = plainalphabet.indexOf(ch);
if (x != -1) {
result = result + cipheralphabet.charAt(x);
}
else {
result = result + ch;
}
}
return result;
}
public static void main(String args[]) {
String plainalphabet = "abcdefghijklmnopqrstuvwxyz";
String cipheralphabet = "defghijklmnopqrstuvwxyzabc";
System.out.println(encrypt("James"));
}
}
請分享你得到的錯誤,以及你得到它的線。 – Mureinik
cipheralphabet沒有在'encrypt'範圍內定義。您可能想要了解變量作用域 –
'for(String ch:str)'是一個增強型for語句。無論你使用什麼,都必須實現'Iterable'。無論如何,使用標準的'for'循環會更好(因爲語法錯誤,並且您想在迭代中使用索引)。 – Makoto