⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 teststudent.java

📁 java 北大青鸟 java 北大青鸟
💻 JAVA
字号:
/**  (c) 2005 Aptech Limited.
 * 版权所有
 */

/* 导入所需类. */

import java.util.Hashtable;
import java.util.Random;

/**
  * 这个程序创建一个以 StudentId 作为其成员的 Student 类.
  * @version 1.0, 2005 年 5 月 20 日
  * @author zl
  */

class Student {

/** 声明 int 变量. */
    int studentID;

/** 
 * 构造方法.
 * @param num 用于初始化变量
 */
    Student(final int num) {
        studentID = num;
    }

/** 
 * 重写 hashCode() 方法,以便将自己的类用作键.
 * @return studentID
 */
    public int hashCode() {
        return studentID;
    }

/** 
 * 重写 equals() 方法,以便将自己的类用作键.
 * @param studentObj Student 类的对象
 * @return flag 两个对象是否相同
 */

    public boolean equals(final Object studentObj) {
        boolean flag = false;
        if ((studentObj != null) && (studentObj instanceof Student)) {
           int id = ((Student) studentObj).studentID;
           if (studentID == id) { flag = true; }
         } else {
              flag = false;
         }
         return flag;
    }
}

/**
  * 这个程序生成随机数.
  * @version 1.0, 2005 年 5 月 20 日
  * @author Michael
  */

class Result {

/** 声明 boolean 变量. */
    boolean grade;

/** 声明 Random 对象. */
    Random randomObj;

/**
 * 构造方法.
 * 生成随机数,并给 boolean 变量赋值
 */
    Result() {

      randomObj = new Random();
      double number = randomObj.nextDouble();
      if (number > 0.5) {
         grade = true;
      } else {
         grade = false;
      }
   }

/**
 * 重写 toSting() 方法.
 * @return String 值
 */
    public String toString() {
        if (grade) {
             return "您考试及格";
         } else {
             return "您考试不及格";
         }
    }
}
/**
  * 这个程序使用 Hashtable 类.
  * @version 1.0, 2005 年 5 月 20 日
  * @author zl
  */
class StudentHash {

/** 声明一个 Hashtable. */
    Hashtable studentTable;

/** 构造方法. */
    StudentHash() {
         studentTable = new Hashtable();
    }

/** 
 * 将值添加到 Hashtable 中. 
 */
    void add() {
        for (int ctr = 0; ctr < 10; ctr++) {
            studentTable.put(new Student(ctr), new Result());
        }
    }

/** 
 * 搜索特定值.
 * @param num要搜索的值
 */
    void search(final int num) {
         System.out.println("\n****************************************");
         System.out.println("搜索对象并显示结果");
         System.out.println("****************************************");
         Student studentObj = new Student(num);
         if (studentTable.containsKey(studentObj)) {
            System.out.println((Result) studentTable.get(studentObj));
         }
    }

 }

 /**
  * 这个程序演示 Hashtable 的用法.
  * @version 1.0, 2005 年 5 月 20 日
  * @author zl
  */

class TestStudent {

/** 
 * 构造方法.
 */
    protected TestStudent() {
    }

/**
 * 这是任何应用程序的执行起始点.
 * @param args 传递至 main 方法
 */
    public static void main(String[] args) {
          StudentHash studentHashObj = new StudentHash();
          studentHashObj.add();
          studentHashObj.search(3);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -