用户输入代码字和文本进行加密,然后编程应将XOR遮罩(将代码遮盖在文本上)并恢复为正常状态,但是它只是戴上了遮罩而没有恢复为正常外观,为什么?

public void onClick(View arg0) {
        code = etCode.getText().toString();
        text = etText.getText().toString();

        while(code.length()<text.length()){
            code+=code;
        }
        char[] Ccode = code.toCharArray();
        char[] Ctext = text.toCharArray();

        for(i=0;i<Ctext.length;i++){
            Ctext[i]^=Ccode[i];
        }

        rezult=Ctext.toString();

        for(i=0;i<Ctext.length;i++){
            Ctext[i]^=Ccode[i];
        }
        rezult+="\n";
        rezult+=Ctext.toString();
        tvMain.setText(rezult);
        }
    });

如果我输入code : code , text : text表明:
[C@40527808
[C@40527808

最佳答案

您输出数组的地址。您需要内容。
数组没有有用的toString() mwthod。

更改

rezult=Ctext.toString();


rezult=new String(Ctext);

一样
rezult+=Ctext.toString();

=>
rezult+=new String(Ctext);

09-27 22:07