編譯報錯求解答。
package com.imooc.collection;
import java.util.HashSet;
import java.util.Set;
/**
?* 學生類
?* @author 鵬
?*
?*/
public class Student {
?public String id;
?public String name;
?//定義一個存放選擇的課程的集合
?public Set<String> Courses;
?//定義一個構(gòu)造器來傳入id,name和Course
?public Student(String id,String name){
??this.id=id;
??this.name=name;
??this.Courses=new HashSet<String>();//將選擇的課程集合實例化
?}
}
2.
package com.imooc.collection;
/**
?* 課程類
?* @author 鵬
?*
?*/
public class Course {
?//定義兩哥公用的Course的屬性
?public String id;
?public String name;
?//創(chuàng)建一個構(gòu)造器,令我們輸入的id+name傳入Course里面
?public Course(String id,String name){
??this.id=id;
??this.name=name;
?}
?public Course(){
??
?}
}
3.
package com.imooc.collection;
public class ChildCourse extends Course {
}
4.
package com.imooc.collection;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class SetText {
?
?public List<Course> coursesToselect;
?
?public SetText(){
??coursesToselect =new ArrayList<Course>();
?}
?
?public void add(){
??Course cr1 = new Course("1","程序設(shè)計基礎(chǔ)");
??coursesToselect.add(cr1);
??Course cr2 = new Course("2","計算機網(wǎng)絡(luò)");
??coursesToselect.add(cr2);
??Course cr3 = new Course("3","數(shù)據(jù)結(jié)構(gòu)");
??coursesToselect.add(cr3);
??Course cr4 = new Course("4","高數(shù)");
??coursesToselect.add(cr4);
??Course cr5 = new Course("5","線代");
??coursesToselect.add(cr5);
??Course cr6 = new Course("6","概率論與數(shù)理統(tǒng)計");
??coursesToselect.add(cr6);
??Course cr7 = new Course("7","大學英語");
??coursesToselect.add(cr7);
??Course cr8 = new Course("8","馬原");
??coursesToselect.add(cr8);
?}
?
?public void ForEach(){
??for (Course course : coursesToselect) {
???System.out.println("課程:"+course.id+":"+course.name);
??}
?}
?
?public static void main(String[] args) {
??// TODO 自動生成的方法存根
??Student student = new Student("1","小明");
??System.out.println("歡迎"+student.name+"同學來選課");
??System.out.println("\n可以被選擇的課程有:");
??SetText H = new SetText();
??H.add();
??H.ForEach();
??Scanner in=new Scanner(System.in);
??for(int i = 0;i<3;i++){
???System.out.println("請輸入課程的ID:");
???String courseid = in.next();
???for (Course cr : H.coursesToselect) {
????if(cr.id.equals(courseid)){
?????student.Courses.add(cr);
????}
???}
??}
??
?}
?
?public void TextForEach(Student student){
??for (Course cr : student.Courses) {
???System.out.println("選擇了課程:"+cr.id+":"+cr.name);
??}
?}
}
2016-08-06
應(yīng)該把Student?類里面的
//定義一個存放選擇的課程的集合
?public Set<String> Courses;
改為?public Set<Course> Courses;?
注意:你放的泛型應(yīng)該為Course 類型