急急急。。。java代码报错。。。大神请详解,赐教啦~
package com.zao;
import java.util.ArrayList;
public class Core1 {
	private String xingming;
	private String lll;
	private String mmm;
	public Core1(String a, String b, String c) {
		xingming = a;
		lll = b;
		mmm = c;
	}
public String getXingming(){
	return xingming;
}public String getLLL(){
	return lll;
}public String getmmm(){
	return mmm;
}public Core1(){}
	public static void main(String[] args) {
		ArrayList c = new ArrayList();
		System.out.println("" + c.size());
		Core1 b = new Core1("孙悟空", "2", "4");
		Core1 b2 = new Core1("沙僧","2","sd");
		Core1 b3 = new Core1("八戒","2s","360");
		c.add(b);
		c.add(b2);
		c.add(b3);
		System.out.println("大小为:" + c.size());
		for (int i = 0; i <= c.size(); i++) {
			Core1 f = (Core1) c.get(i);
			System.out.println("第" + (i + 1) + "个学生的姓名字是" + f.getXingming());
		}
	}
}
结果显示:0
大小为:2
第1个学生的姓名字是孙悟空
第2个学生的姓名字是沙僧
Exception in thread "main" 
java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
	at java.util.ArrayList.rangeCheck(ArrayList.java:604)
	at java.util.ArrayList.get(ArrayList.java:382)
	at com.zao.Core1.main(Core1.java:33)
可以从运行结果看出,输出了2个人的信息,可是那个“0”是怎么来的??后面的异常又出现在哪里??是越界吗?没有啊   。。。。
              
------解决方案--------------------System.out.println("" + c.size()); 你还没有想容器里面存放数据,打印出来肯定是0。
for (int i = 0; i <= c.size(); i++) ,越界了,改成i<c.size()。另外你这个输出应该是三行。
------解决方案--------------------c.size()的值为3,如果从0开始,那么只能取到0,1,2,而3越界了