public class EchoReverse {

public static void main(String[] args){
for (int i=args.length;i>=0;i--){
for (int j=args[i].length()-1;j>=0;j--){
System.out.print(args[i].charAt(j));
}
System.out.print(" ");
}
System.out.println( );
}}
我没看出来上面代码有错误 可是运行的时候提示:
java EchoReverseException in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at je3.basics.EchoReverse.main(EchoReverse.java:19)运行平台是JDK1.5是不是我写的有问题啊?大家帮我改下啊~~ 

解决方案 »

  1.   

    public static void main(String[] args) {
            for (int i = args.length - 1; i >= 0; i--) {
                for (int j = args[i].length() - 1; j >= 0; j--) {
                    System.out.print(args[i].charAt(j));
                }
                System.out.print(" ");
            }
            System.out.println();
        }
      

  2.   

    程序没问题
    但是这个程序需要有命令行参数
    你用 java EchoReverse xxxxx  就可以正常运行
      

  3.   

    我已经加了命令参数了 可能是我没写清楚~~~我用的是ECLIPSE运行的 已经加了arguments参数了 然后还是有这个错误的!
      

  4.   

    int i=args.length
    args[i].length()-1这里越界了.... i = args.length -1