package org.ylb.demo13.listdemo;
import java.util.ArrayList;
import java.util.List;
public class Arraylistdemo01{
public static void main(String[] args) throws ArrayIndexOutOfBoundsException{  
List<String> alllist = null; //定义list对象
alllist = new ArrayList <String>(); //实例化list对象,只能是STRING类型
alllist.add("hello"); //从collection继承的方法
alllist.add("hello"); //从collection继承的方法
alllist.add(0,"world");//此方法为list扩充的方法
alllist.add("ylb");//增加数据
alllist.add("www.mldn.cn");//增加数据
System.out.println("由前向后输出:"); 
for(int i=0;i<alllist.size();i++)

System.out.print(alllist.get(i)+"\n");
}
System.out.println("由后向前输出:"); 
for(int i=alllist.size();i>=0;i--)

System.out.print(alllist.get(i-1)+"\n");
}
}
}
程序是可以运行了 运行结果也是想要的效果 但是运行完后报了2条错误不知道是什么意思
小弟刚自学java1个礼拜 望高手多多指点啊
在线等 谢谢了运行结果和错误信息如下:
由前向后输出:
world
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
hello
hello
ylb
www.mldn.cn
由后向前输出:
www.mldn.cn
ylb
hello
hello
world
at java.util.ArrayList.get(ArrayList.java:324)
at org.ylb.demo13.listdemo.Arraylistdemo01.main(Arraylistdemo01.java:21)

解决方案 »

  1.   

    循环终止条件错误:
    System.out.println("由后向前输出:");  
    for(int i=alllist.size();i>0;i--) { // 必须去掉 “等于” 号,否则i==0的时候,你就执行 get(-1) 了  
      System.out.print(alllist.get(i-1)+"\n");
    }
      

  2.   

    神奇了
    为什么这样写就不抛异常了
    package org.ylb.demo13.listdemo;
    import java.util.ArrayList;
    import java.util.List;
    public class Arraylistdemo01{
    public static void main(String[] args){  
    try
    {List<String> alllist = null; //定义list对象
    alllist = new ArrayList <String>(); //实例化list对象,只能是STRING类型
    alllist.add("hello"); //从collection继承的方法
    alllist.add("hello"); //从collection继承的方法
    alllist.add(0,"world");//此方法为list扩充的方法
    alllist.add("ylb");//增加数据
    alllist.add("www.mldn.cn");//增加数据
    System.out.println("由前向后输出:"); 
    for(int i=0;i<alllist.size();i++)

    System.out.print(alllist.get(i)+"\n");
    }
    System.out.println("由后向前输出:"); 
    for(int i=alllist.size();i>=0;i--)

    System.out.print(alllist.get(i-1)+"\n");
    }
    }catch(Exception e){}
    }
    }
    求高手帮我解释下 求理解 在线等答案额