【发布时间】:2015-06-10 03:38:57
【问题描述】:
我想要一个字符,给它添加数字并得到另一个char(a+2=c)
int leng,leng2;
String word = "";
String key = "";
String enc ="";
char x;
char z;
char tost;
System.out.println("gimme word");
word=in.next();
System.out.println("gimme key");
key=in.next();
leng=word.length();
leng2=key.length();
for(int i=1;i<=leng;i++)
{
z=word.charAt(i-1);
x=key.charAt(i-1);
int plus=z + x;
tost=(char)plus;
enc=enc+tost;
System.out.println(enc);
System.out.println(tost);
System.out.println((char)z);
System.out.println((char)x);
System.out.println(plus);
System.out.println((char)plus);
}
我希望它打印 c 并在我的代码中使用 charAt 来打印,因为我有一个完整的字符串,我尝试搜索许多解决方案,并尝试了很多方法,但它们都没有工作。
编辑:按要求启用完整代码 char plus的方式不起作用,说是错误
【问题讨论】:
-
Java 字符串是 Unicode/UTF-16 代码单元的计数序列,其中一个或两个编码一个代码点。虽然偏移代码点是有意义的,但结果不一定与字符相关联。我猜你想在有限的范围内操作,比如Basic Latin 字母,如果 +2 超出范围,则环绕。