【发布时间】:2017-10-11 15:56:25
【问题描述】:
我想编写一个程序,它将接受一个字符串并将 2 添加到字符串的每个字符这非常简单这是我的代码。 示例:-
String str="ZAP YES";
nstr="BCR AGU" //note Z=B and Y=A
String str=sc.nextLine();
String nstr=""
for(int i=0;i<str.length();i++)
{
char ch=sc.charAt(i);
if(ch!=' ')
{
if(ch=='Z')
ch='B';
else if(ch=='Y')
ch='A';
else
ch=ch+2;
}
nstr=nstr+ch;
}
现在我想将每个字符增加 n(而不是 2),这真的是我无法解决的问题。
我可能会考虑使用 n%26 ,并为条件使用循环,但我无法解决如何实现它。
【问题讨论】:
-
想一想如果您将 ch 设为 'z' 会发生什么?如果你的字符的 ascii char 值为 256 会怎样?
-
'by n' 是什么意思?
-
n 是一个变量,因为在第一种情况下它是 2 现在它是在运行时决定的。
-
请注意,可以假设输入字符串仅包含从大写“A”到“Z”的空格和字符。
-
因为 ASCII 'Z' 是 90,只要测试你的 char 是否 > 90,如果是则减去 26
标签: java string cryptography character