我的这段JAVA代码出错了

我的这段JAVA代码出错了这段代码老是让s[1]的东西覆盖了s[0],是怎么回事呢?是逻辑错误吗?

你的for循环的范围判定i<=s.length-1;你这个执行到第100个不可能不报错的,角标越界。
for循环里面为什么还要在执行一次new Student()?把这句话删除试试,或者for外面的new Student()删除;本身for循环就在给s对象引用了,估计是重复了,所以s[i]指向的是数组第二个位置了。追问

我每次在循环里new student()是为了给student数组的每个元素创建一个对象,去掉的话,新的数组元素就没有对象可以引用了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-08-07
这看起来还真的没有什么问题啊
第2个回答  2018-08-07
看上去没问题追问

对,看上去是没有问题,但是运行的时候,所有数组的内容都是一样的

追答

自己跟一下代码看看Student[100]每次是个什么东西,是代码没保存还是什么原因

相似回答