它会在q=c[n];
出现错误,我希望c[n].i
的值无法访问它。
public static String aSCII() {
char c[] = query.toCharArray();
int q;
for (int n = 0; n <= query.length(); n++) {
q = c[n];
if (q + aSCIIValue > 126) {
c[n] = (char) (32 + aSCIIValue - (126 - aSCIIValue));
} else {
c[n] += aSCIIValue;
}
}
}
请帮帮我
答案 0 :(得分:1)
观察循环:
for(int n=0;n<=query.length();n++)
它仍将在n == query.length()
时运行。这将导致ArrayIndexOutOfBoundsException
。
答案 1 :(得分:0)
一个char已经是一个int,只是把它投了出来:
q = (int) c[n];