一个JAVA初学实践问题

来源:百度知道 编辑:UC知道 时间:2024/05/09 08:12:11
//下面是我的一个加密程序代码的一部分,a是我特意不用i而加的,
//因为用i的话总是说数组下标越界。(如果用i的话那就将int i部分替代int //a,循环部分没有int i,[a]改为[i].
//现在它只给了第一个字加密,后面的还是原文,为什么呀?在此谢谢大家//了!
String zm(String y)
{
int a=0;
char m1[]=y.toCharArray();
for(int i=0;i<m1.length;i++);
{
m1[a]=(char)(m1[a]^'s');
a=a++;
}
String m=new String(m1);
return m;
}
对不起,那个a=a++;是打错了,但还是没有用。

我晕,是你加密函数里的循环体有误啊,
for(int i=0;i<m1.length;i++);
{
m1[a]=(char)(m1[a]^'s');
a++;
}
多了一个分号.花括号里只执行了一次,所以只加密了第一个字符.

a=a++;

改成a++;
试试