我正在完成一項任務,此部分正在讓我絆倒。如果在另一個字符串中找到字符串,則將其替換爲空白字符
構造密碼1首先用矩陣中的唯一字母填充矩陣。
例如,如果密鑰是「testkey」
,那麼用字母T,E,S,K,Y填寫密鑰。
不要從密鑰中填充重複的字符。然後用矩陣的其餘字符填充矩陣(再次,跳過Q)。
不要重複出現在密鑰中的任何字符。因此,對於「密押」,cipher1看起來是這樣的:「
的密碼是一種5×5陣列通常充滿字母減去‘Q’的字母
所以如果。我的關鍵是密押,密碼會立即被填充"TESKYABCDFGHIJLMNOPRUVWXZ" instead of "ABCDEFGHIJKLMNOPRSTUVWXYZ".
我覺得像這樣的工作,但事實並非如此。
for (int i = 0; i < key.length(); i++)
{
key.toCharArray();
alphabet.replace(key[i], "");
}
關鍵變量是字符串「TESTKEY」而字母變量也是包含「ABCDEFGHIJKLMNOPRSTUVWXYZ」的字符串。
現在看,代碼顯然有缺陷,現在我只是卡住了。請任何一個給我建議
java中的字符串是不可變的。重新分配給字母變量由於調用replace而返回的新字符串。 –
我建議你研究一下,看看Java字符串是不可變的,然後在你理解了之後再試一次。 –