public void testAdd(){
Course cr1 = new Course();
cr1.setId("1");
cr1.setName("JAVA编程");
coursesToSelect.add(cr1);
Course temp=(Course)coursesToSelect.get(0);}
public void testListContains(){
System.out.println("请输入要查询课程的ID:");
Scanner console=new Scanner(System.in);
while (true){
String id=console.next();
Course course=coursesToSelect.get(id.indexOf(id));
if (course.getName()==null){
System.out.println("请重新输入ID");
continue;
}
System.out.println("取得课程"+course.getName());
System.out.println("备选课程是否含有该课程:"+course.getName()+coursesToSelect.contains(course));
break;
}
}
为什么运行结果不正确,输入5,也会出现0位置的结果?
以下是运行结果:
通过迭代器访问:
1JAVA编程
2大学英语
3计算机导论
请输入要查询课程的ID:
5
取得课程JAVA编程
备选课程是否含有该课程:JAVA编程true
Course course=coursesToSelect.get(id.indexOf(id));
这句中,id.indexOf(id)是在id这个字符串中找id的内容的位置,比如说 "5".indexOf("5")返回值自然是0 ,所以出现0位置的结果