Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41516
  • 博文数量: 71
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 726
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-24 08:29
文章分类

全部博文(71)

文章存档

2015年(71)

我的朋友

分类: Java

2015-02-19 15:00:07


  1. package com.imooc.collection;

  2. import java.util.ArrayList;
  3. import java.util.Arrays;
  4. import java.util.List;
  5. import java.util.Scanner;

  6. /**
  7.  * @author ECJTU IsayesHu
  8.  *
  9.  */
  10. public class SetTest {

  11.     public List<Course> coursesToSelect;

  12.     private Scanner console;

  13.     public SetTest() {
  14.         coursesToSelect = new ArrayList<Course>();
  15.         console = new Scanner(System.in);
  16.     }

  17.     /**
  18.      * @param args
  19.      */

  20.     public void testAdd() {
  21.         // 创建一个对象,并通过调用add方法,添加到备选课程List中
  22.         Course cr1 = new Course("1", "数据结构");
  23.         coursesToSelect.add(cr1);
  24.         Course temp = (Course) coursesToSelect.get(0);

  25.         Course cr2 = new Course("2", "C语言");
  26.         coursesToSelect.add(0, cr2);
  27.         Course temp2 = (Course) coursesToSelect.get(0);

  28.         Course[] course = { new Course("3", "离散数学"), new Course("4", "汇编语言") };
  29.         coursesToSelect.addAll(Arrays.asList(course));
  30.         Course temp3 = (Course) coursesToSelect.get(2);
  31.         Course temp4 = (Course) coursesToSelect.get(3);

  32.         Course[] course2 = { new Course("5", "高等数学"), new Course("6", "大学英语") };
  33.         coursesToSelect.addAll(2, Arrays.asList(course2));
  34.         Course temp5 = (Course) coursesToSelect.get(2);
  35.         Course temp6 = (Course) coursesToSelect.get(3);
  36.     }

  37.     public void testForEach() {
  38.         System.out.println("有如下课程可以选择(通过foreach访问):");
  39.         for (Object obj : coursesToSelect) {
  40.             Course cr = (Course) obj;
  41.             System.out.println("课程:" + cr.id + ":" + cr.name);
  42.         }
  43.     }

  44.     /*
  45.      * 测试List的contains方法
  46.      */
  47.     public void testListContains() {
  48.         // 取得被选课序列的第0个元素
  49.         Course course = coursesToSelect.get(0);
  50.         // 打印输出coursesToSelected是否包含course对象
  51.         System.out.println("取得课程:" + course.name);
  52.         System.out.println("备选课程中是否包含课程:" + course.name + ", "
  53.                 + coursesToSelect.contains(course));
  54.         // 创建一个新的课程对象,ID和名称,与对象完全一样
  55.         Course course2 = new Course(course.id, course.name);
  56.         System.out.println("新创建课程:" + course2.name);
  57.         System.out.println("备选课程中是否包含课程:" + course2.name + ", "
  58.                 + coursesToSelect.contains(course2));
  59.     }

  60.     public static void main(String[] args) {
  61.         SetTest st = new SetTest();
  62.         st.testAdd();
  63.         /*
  64.          * st.testForEach(); // 创建一个学生对象 Student student = new Student("1",
  65.          * "小明"); System.out.println("欢迎学生:" + student.name + "选课!"); //
  66.          * 创建一个Scanner对象,用来接收从键盘输入的课程ID Scanner console = new
  67.          * Scanner(System.in); for (int i = 0; i < 3; i++) {
  68.          * System.out.println("请输入课程ID"); String courseId = console.next(); for
  69.          * (Course cr : st.coursesToSelect) { if (cr.id.equals(courseId)) {
  70.          * student.courses.add(cr); student.courses.add(cr); } } }
  71.          * st.testForEachSet(student);
  72.          */
  73.         st.testListContains();
  74.     }

  75.     public void testForEachSet(Student student) {
  76.         // 打印输出,学生所选的课程
  77.         System.out.println("共选了" + student.courses.size() + "门课程!");
  78.         for (Course cr : student.courses) {// 记得把Student.java中的Set改成泛型Course
  79.             System.out.println("选择了课程:" + cr.id + ":" + cr.name);
  80.         }
  81.     }
  82. }







  1. package com.imooc.collection;

  2. import java.util.ArrayList;
  3. import java.util.Arrays;
  4. import java.util.List;
  5. import java.util.Scanner;

  6. /**
  7.  * @author ECJTU IsayesHu
  8.  *
  9.  */
  10. public class SetTest {

  11.     public List<Course> coursesToSelect;

  12.     private Scanner console;

  13.     public SetTest() {
  14.         coursesToSelect = new ArrayList<Course>();
  15.         console = new Scanner(System.in);
  16.     }

  17.     /**
  18.      * @param args
  19.      */

  20.     public void testAdd() {
  21.         // 创建一个对象,并通过调用add方法,添加到备选课程List中
  22.         Course cr1 = new Course("1", "数据结构");
  23.         coursesToSelect.add(cr1);
  24.         Course temp = (Course) coursesToSelect.get(0);

  25.         Course cr2 = new Course("2", "C语言");
  26.         coursesToSelect.add(0, cr2);
  27.         Course temp2 = (Course) coursesToSelect.get(0);

  28.         Course[] course = { new Course("3", "离散数学"), new Course("4", "汇编语言") };
  29.         coursesToSelect.addAll(Arrays.asList(course));
  30.         Course temp3 = (Course) coursesToSelect.get(2);
  31.         Course temp4 = (Course) coursesToSelect.get(3);

  32.         Course[] course2 = { new Course("5", "高等数学"), new Course("6", "大学英语") };
  33.         coursesToSelect.addAll(2, Arrays.asList(course2));
  34.         Course temp5 = (Course) coursesToSelect.get(2);
  35.         Course temp6 = (Course) coursesToSelect.get(3);
  36.     }

  37.     public void testForEach() {
  38.         System.out.println("有如下课程可以选择(通过foreach访问):");
  39.         for (Object obj : coursesToSelect) {
  40.             Course cr = (Course) obj;
  41.             System.out.println("课程:" + cr.id + ":" + cr.name);
  42.         }
  43.     }

  44.     /*
  45.      * 测试List的contains方法
  46.      */
  47.     public void testListContains() {
  48.         // 取得被选课序列的第0个元素
  49.         Course course = coursesToSelect.get(0);
  50.         // 打印输出coursesToSelected是否包含course对象
  51.         System.out.println("取得课程:" + course.name);
  52.         System.out.println("备选课程中是否包含课程:" + course.name + ", "
  53.                 + coursesToSelect.contains(course));

  54.         // 提示输入课程名称
  55.         System.out.println("请输入课程名称:");
  56.         String name = console.next();
  57.         // 创建一个新的课程对象,ID和名称,与对象完全一样
  58.         Course course2 = new Course();
  59.         course2.name = name;
  60.         System.out.println("新创建课程:" + course2.name);
  61.         System.out.println("备选课程中是否包含课程:" + course2.name + ", "
  62.                 + coursesToSelect.contains(course2));
  63.     }

  64.     public static void main(String[] args) {
  65.         SetTest st = new SetTest();
  66.         st.testAdd();
  67.         /*
  68.          * st.testForEach(); // 创建一个学生对象 Student student = new Student("1",
  69.          * "小明"); System.out.println("欢迎学生:" + student.name + "选课!"); //
  70.          * 创建一个Scanner对象,用来接收从键盘输入的课程ID Scanner console = new
  71.          * Scanner(System.in); for (int i = 0; i < 3; i++) {
  72.          * System.out.println("请输入课程ID"); String courseId = console.next(); for
  73.          * (Course cr : st.coursesToSelect) { if (cr.id.equals(courseId)) {
  74.          * student.courses.add(cr); student.courses.add(cr); } } }
  75.          * st.testForEachSet(student);
  76.          */
  77.         st.testListContains();
  78.     }

  79.     public void testForEachSet(Student student) {
  80.         // 打印输出,学生所选的课程
  81.         System.out.println("共选了" + student.courses.size() + "门课程!");
  82.         for (Course cr : student.courses) {// 记得把Student.java中的Set改成泛型Course
  83.             System.out.println("选择了课程:" + cr.id + ":" + cr.name);
  84.         }
  85.     }
  86. }


  1. package com.imooc.collection;

  2. /**
  3.  * 课程类
  4.  *
  5.  * @author
  6.  *
  7.  */
  8. public class Course {

  9.     public String id;
  10.     public String name;

  11.     public Course(String id, String name) {
  12.         this.id = id;
  13.         this.name = name;
  14.     }

  15.     public Course() {

  16.     }

  17.     /*
  18.      * 重写某个类的equals方法
  19.      */
  20.     @Override
  21.     public boolean equals(Object obj) {
  22.         if (this == obj) {
  23.             return true;
  24.         }
  25.         if (obj == null) {
  26.             return false;
  27.         }
  28.         if (!(obj instanceof Course)) {
  29.             return false;
  30.         }
  31.         Course course = (Course) obj;
  32.         if (this.name == null) {
  33.             if (course.name == null) {
  34.                 return true;
  35.             } else
  36.                 return false;
  37.         } else {
  38.             if (this.name.equals(course.name))
  39.                 return true;
  40.             else
  41.                 return false;
  42.         }
  43.     }
  44. }



阅读(312) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~