Java 加密方法输出不正确

Java 加密方法输出不正确,java,class,loops,methods,int,Java,Class,Loops,Methods,Int,我有一个名为encryption的类,它表示用户在main中输入的字符串,然后通过.encryptMessage()方法对其进行加密。我希望将字母表中的字符转换为相应的int值,反之亦然,并使用int值。我原以为我的方法可以很好地做到这一点,但它并没有以那种方式输出 问题:如何修复此方法,使字母表chars输出为相应的int值,反之亦然?(即a=1、b=2、1=a、2=b等) 公共类加密{ 私有字符串消息; 公共加密(字符串消息){ this.message=消息; } 公共字符串加密消息()

我有一个名为
encryption
的类,它表示用户在main中输入的字符串,然后通过
.encryptMessage()
方法对其进行加密。我希望将字母表中的字符转换为相应的
int
值,反之亦然,并使用
int
值。我原以为我的方法可以很好地做到这一点,但它并没有以那种方式输出

问题:如何修复此方法,使字母表
chars
输出为相应的
int
值,反之亦然?(即a=1、b=2、1=a、2=b等)

公共类加密{
私有字符串消息;
公共加密(字符串消息){
this.message=消息;
}
公共字符串加密消息()
{
char-messageChar=0;
对于(int i=0;i

}

字符。getNumericValue
不会返回您认为是的数值

getNumericValue(char ch)返回int值 指定的Unicode字符表示的。例如 字符“\u216C”(罗马数字50)将返回一个带 价值50

这里有一个可以使用的片段

String str = "abcdef";
char[] ch  = str.toCharArray();
for(char c : ch)
{
    int temp = (int)c;
    int temp_integer = 96; //for lower case
    if(temp<=122 & temp>=97)
       System.out.print(temp-96);
}

请注意,这两个代码段是从

中偷来的。另外,我该如何以相反的方式执行此操作?比如说,如果我想将一个整数转换成对应的字母?@Jordan只需将
temp_整数
相加,而不是将其相减,然后将int值作为字符输出。
String str = "abcdef";
char[] ch  = str.toCharArray();
for(char c : ch)
{
    int temp = (int)c;
    int temp_integer = 96; //for lower case
    if(temp<=122 & temp>=97)
       System.out.print(temp-96);
}
String str = "DEFGHI";
char[] ch  = str.toCharArray();
for(char c : ch)
{
    int temp = (int)c;
    int temp_integer = 64; //for upper case
    if(temp<=90 & temp>=65)
        System.out.print(temp-temp_integer);
}