【发布时间】:2014-11-15 03:05:42
【问题描述】:
我有一个随机字符生成的字符串,它将通过将字符串中的第一个字符与给定字符串的第一个字符相加来加密用户给出的另一个字符串。它工作正常,但是如果用户要输入多个中间有空格的单词,我想选择第一个字符串的下一个字符而不是编码空格本身。那可能吗?这就是我所拥有的:
(random 是编码字符串,sentenceUpper 是用户给定的字符串)
public static void encrypt(String sentenceUpper){
String newSentence = "";
for(int i = 0; i < sentenceUpper.length(); i++){
char one = random.charAt(i);
char two = sentenceUpper.charAt(i);
if(one < 'A' || one > 'Z'){
two = sentenceUpper.charAt(1 + i);}
char result = (char)((one + two)%26 + 'A');
newSentence += "" + result;
}
编辑以获得更好的解释:
我有:
字符串随机 = "WFAZYZAZOHS";
我想对用户输入进行编码:
字符串大写:"YOU GO";
所以,我将采用 Y + L = U 等... 要得到 : “尤森 " 但是我看到 "YOU GO" 中有一个空格,所以我想将其更改为: WFA ZY + YOU GO = UTU SE。
我希望这能得到更好的解释。
【问题讨论】:
-
您能否更详细地解释您的问题?我不明白你在这里要做什么
-
@DreadHeadedDeveloper,这有帮助吗?
-
为什么是 Y+L?不应该是 Y+W?
-
它可以帮助你:stackoverflow.com/questions/8879714/…。如果我理解的话,你可以用数字来表示字母,这样处理总和会更容易。
-
恐怕我还是不明白。就像亚瑟说的,你为什么要做 Y+L?不应该是 Y+W 吗?