我无法让它工作,我需要指向正确的方向。用户将输入命令行整数以确定字符将旋转的位置。我的问题是我希望所有小写和大写保持相同的情况,同时保持空格和特殊字符不变,只旋转指定整数的字母。我需要确保例如:整数集为1并且字符串“Z”输入要加密的字符串中,它需要回绕到“A”而不是转到下一个ASCII字符“[”I一直试图使用“%”运算符,但我可能使用它错了。我不是在寻找有人为我编写完整的代码,我知道我可以通过查看工作程序的源代码找到我的答案,但我试图通过自己来解决这个问题,但是现在我很难过并需要一点帮助。谢谢!
我终于开始工作了我整个操作都错了,这对我有用。
char encrypt = ('A' + ( ( (input[i] - 'A') + key ) % 26));
在我尝试之前
char encrypt (input[i] + key) % 26;
感谢快速回答!
答案 0 :(得分:0)
虽然有很多方法可以达到你想要的效果,但我建议你研究java.util.Map
。确定这是加密Map
还是解密Map
并将输入字符作为键,并将输出字符作为值。然后,当您需要翻译时,您只需遍历每个待翻译字符并组合输出值。注意未映射的值(因为它们在查找时将返回null)。