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

setTest中编译好testListContains方法后

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


正在回答

1 回答

Course course=coursesToSelect.get(id.indexOf(id));

这句中,id.indexOf(id)是在id这个字符串中找id的内容的位置,比如说     "5".indexOf("5")返回值自然是0 ,所以出现0位置的结果

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

紫金湖人 提问者

那应该如何改呢?
2016-03-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

setTest中编译好testListContains方法后

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