如何在java中转换char数组的值?

如何在java中转换char数组的值?,java,arrays,shift,Java,Arrays,Shift,我要做的是创建一种加密方法,将从输入文件中获取的字符数组移位一定数量的字母。我很难弄清楚如何将字符转换成整数并返回。 到目前为止,我得到的是: char [] sChar = new char[line.length()]; for(int i = 0; i < sChar.length; i++){ String s = reader.next(); sChar = s.toCharArray(); if(Character.is

我要做的是创建一种加密方法,将从输入文件中获取的字符数组移位一定数量的字母。我很难弄清楚如何将字符转换成整数并返回。 到目前为止,我得到的是:

char [] sChar = new char[line.length()];

    for(int i = 0; i < sChar.length; i++){
        String s = reader.next();
        sChar = s.toCharArray();
        if(Character.isLetter(sChar[i])) {
            char c = 'a';
            int b = c;
            sChar[i] += key;
char[]sChar=新字符[line.length()];
对于(int i=0;i
不确定你在想什么

我认为将int转换为字符和back会很容易。 只是为了让我检查过的想法更新鲜

    char xdrf = 'a';
    System.out.println((int)xdrf); // output is 97
    int idrf= 99;
    xdrf = (char)idrf;
    System.out.println(xdrf); // output is c
另外,如果您的键是一个字符,您可以直接将它和语句相加

 schar[i] += key;
应该是好的

更重要的是

    idrf = idrf + 'd';
    System.out.println(idrf); //output is 199
进一步利用

 System.out.println(Character.getNumericValue(idrf-20)); //output is 3 

这一切都是通过ascii值进行的。我不确定您是否希望使用ascii值。

不是最可靠的加密。如果您正在加密,xor更好:
sChar[I]^=key;
。要获取原始值,只需执行
sChar[I]^=key;
再说一遍。我建议你研究一下实际的加密,除非你只是为了练习编码——作为一种练习。要将int
I
改为char do:
char c=(char)I;
更多的是编码练习,我是一个完全的初学者