為何打印出來是亂碼?
請教,為何輸入“數(shù)據(jù)結(jié)構(gòu)”后,打印出來的是亂碼?謝謝
package?com.imooc.collection;
import?java.util.ArrayList;
import?java.util.Arrays;
import?java.util.HashSet;
import?java.util.List;
import?java.util.Scanner;
import?java.util.Set;
public?class?SetTest?{
public?List<Course>?coursesToSelect;
private?Scanner?console;
public?Student?student;
public?SetTest(){
this.coursesToSelect=new?ArrayList<Course>();
}
public?void?testAdd(){
Course?cr1=new?Course("1","數(shù)據(jù)結(jié)構(gòu)");
coursesToSelect.add(cr1);
Course?cr2=new?Course("2","C");
coursesToSelect.add(0,?cr2);
Course[]?course={new?Course("3","匯編語言"),new?Course("4","計算機原理")};
coursesToSelect.addAll(Arrays.asList(course));
Course[]?course2={new?Course("5","離散數(shù)學(xué)"),new?Course("6","大學(xué)英語")};
coursesToSelect.addAll(4,?Arrays.asList(course2));
}
public?void?testForEach(){
System.out.println("待選課程如下:(通過foreach來選擇)");
for(Course?cr:coursesToSelect){
//Course?cr=(Course)obj;
System.out.println(cr.id+"?"+cr.name);
}
}
public?void?testListContains(){
Course?course=coursesToSelect.get(0);
System.out.println("取得課程:"+course.name);
System.out.println("備選課程中是否包含課程:"+course.name+","+coursesToSelect.contains(course));
Course?course2=new?Course(course.id,course.name);
System.out.println("新創(chuàng)建課程:"+course2.name);
System.out.println("備選課程中是否包含課程:"+course2.name+","+coursesToSelect.contains(course2));
}
public?void?createStudentAndSelectCourse(){
student=new?Student("1","小莫");
System.out.println("歡迎學(xué)生:"+student.name+"選課!");
console=new?Scanner(System.in);
for(int?i=0;i<3;i++){
System.out.println("請輸入課程ID");
String?courseId=console.next();
for(Course?cr:coursesToSelect){
if(cr.id.equals(courseId)){
student.courses.add(cr);
}
}
}
}
public?void?testSetContains(){
System.out.println("請輸入學(xué)生已選的課程名稱:");
console=new?Scanner(System.in);
String?name=console.next();
Course?course2=new?Course();
course2.name=name;
System.out.println("新創(chuàng)建課程:"+course2.name);
System.out.println("已選課程中是否包含課程:"+course2.name+","+student.courses.contains(course2));
}
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
SetTest?st=new?SetTest();
st.testAdd();
st.testForEach();
st.createStudentAndSelectCourse();
st.testForEachForSet(st.student);
st.testSetContains();
}
public?void?testForEachForSet(Student?student){
System.out.println("共選擇了:"+student.courses.size());
for(Course?cr:student.courses){
System.out.println("選擇了課程:"+cr.name);
}
}
}
2015-05-08
這個問題比較奇怪。
樓主可以參考這個:http://bbs.csdn.net/topics/340269600