问答详情
源自:-

大神们看看哪里有问题?谢谢

package HelloWorld;

public class HelloWorld{

public static void main (String args[]){

char[] a={'a','b','c','d','e'};

for(int i=0; i<=a.length/2; i++){

char c=a[i];

a[i]=a[a.length-(i-1)];

a[a.length-(i-1)]=c;

}

System.out.printf("%c%c%c%c%c",a[0],a[1],a[2],a[3],a[4]);

}

}


提问者:弹仙人掌的白色钢琴 2018-11-17 17:32

个回答

  • 筱米傲
    2019-07-14 21:09:24

    第5行:for(int i=0; i<=a.length/2; i++){

    循环条件建议改为: i<a.length/2

    第7、8行:a[a.length-(i-1)]

    当i=0时,a[5-(0-1)],也就是a[6],显然是越界了。建议去掉那个小括号,改为:a[a.length-i-1]