为了账号安全,请及时绑定邮箱和手机立即绑定

集合框架学生选课提示数组下标越界

按照老师说的输入的提示:


这个提示是数组下标越界的意思吧,但是我是按照视频里代码输入的,包括导入包都没有错误,不知道为什么出现这个提示。

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0    


不知道为什么?

正在回答

2 回答

Course cr1 = new Course("1","数据结构");

Course temp = (Course) coursesToSelect.get(0);

coursesToSelect.add(cr1);

顺序错了,代码执行是按照写的顺序来的,你还没加进去就要取出来,肯定不对,把 coursesToSelect.add(cr1); 跟

Course temp = (Course) coursesToSelect.get(0);调换一下顺序就可以了。

0 回复 有任何疑惑可以回复我~
#1

清澄白河 提问者

十分感谢!
2017-05-26 回复 有任何疑惑可以回复我~

写的代码如下:

package com.imooc.collection;


/**

 * 课程类

 * @author Administrator

 *

 */

public class Course {


public String id;

public String name;

public Course(String id,String name){

this.id = id;

this.name = name;

}

}

=================================================

package com.imooc.collection;


import java.util.HashSet;

import java.util.Set;

/**

 * 学生类

 * @author Administrator

 *

 */

public class Student {

public String id;

public String name;

public Set courses;


public Student(String id,String name){

this.id = id;

this.name = name;

this.courses = new HashSet();

}

}

======================================

package com.imooc.collection;


import java.util.List;

import java.util.ArrayList;


/**

 * 备选课程类

 * @author Administrator

 *

 */

public class ListTest {


/**

* 用于存放备选课程的list

*/

public List coursesToSelect;

public ListTest(){

this.coursesToSelect = new ArrayList();

}

/**

* 用于往coursesToSelect中添加备选课程

*/

public void testAdd(){

//创建一个课程对象,并且通过调用add方法,添加到备选课程list中

Course cr1 = new Course("1","数据结构");

Course temp = (Course) coursesToSelect.get(0);

coursesToSelect.add(cr1);

System.out.println("添加了课程:"+temp.id+":"+temp.name);

Course cr2 = new Course("2","C语言");

coursesToSelect.add(0,cr2);

Course temp2 = (Course)coursesToSelect.get(0);

System.out.println("添加了课程:"+temp2.id+":"+temp2.name);

}

public static void main(String[] args){

ListTest lt = new ListTest();

lt.testAdd();

}

}


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

集合框架学生选课提示数组下标越界

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信