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

向待选课程里添加重复的课程离散数学,选课时选了这门课,不应该是只显示一次吗?

http://img1.sycdn.imooc.com//58bbe26e0001165f03200525.jpg

3:离散数学为什么会显示两次


正在回答

5 回答

你添加了2次离散数学,是2个不同的对象额,如果你Course k0=new new Course("3","离散数学"),然后把这个放进List里两次,再用放到Set里面,再foreach Set就不会出现两次了 

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

同求解

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

顶,求大神来解答

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

public class SetTest {

public List<Course> coursesToSelect;    //存储备选课程

public SetTest() {

coursesToSelect=new ArrayList<Course>();

}

public void testAdd(){

//创建一个课程对象

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

coursesToSelect.add(cr1);

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

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

coursesToSelect.add(0,cr2); //将元素2放到元素1的位置上

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

//创建一个对象数组course

Course[]course1={new Course("3","离散数学"),new Course("4","JAVA语言")};

coursesToSelect.addAll(Arrays.asList(course1));

Course[]course2={new Course("3","离散数学"),new Course("5","操作系统"),new Course("6","计算机网络")};

coursesToSelect.addAll(2,Arrays.asList(course2));

}

public void testforEach(){

System.out.println("有如下课程(通过for each访问):");

for(Course cr:coursesToSelect){  

System.out.println("课程"+cr.id+":"+cr.name);

}

}

public void testforEachSet(Student stu){

//打印输出,学生所选的课程!

System.out.println("共选择了"+stu.courses.size()+"门课程");

for(Course cr:stu.courses){

System.out.println(cr.id+":"+cr.name);

}

}

public static void main(String[] args) {

// TODO Auto-generated method stub

SetTest st=new SetTest();

st.testAdd();

st.testforEach();

//创建一个学生对象

Student stu=new Student("101","小明");

System.out.println("欢迎学生"+stu.name+"来选课");

//创建一个Scanner对象

Scanner console=new Scanner(System.in);

for(int i=0;i<3;i++){

System.out.println("请输入课程ID");

String courseId=console.next();

for(Course cr:st.coursesToSelect){

if(cr.id.equals(courseId)){   //判断输入的课程id是否与备选课程匹配

stu.courses.add(cr);  //将选择的课程添加到课表里

stu.courses.add(cr);

}

}

}

//调用打印学生选课的信息

st.testforEachSet(stu);

}

}


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

代码贴出来看看

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

举报

0/150
提交
取消

向待选课程里添加重复的课程离散数学,选课时选了这门课,不应该是只显示一次吗?

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