Java定时器Timer,TimerTask每隔一段时间随机生成数字

时间:2022-06-02 00:14:13

1:java.util.Timer类是一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。

2:TimerTask类是由 Timer 安排为一次执行或重复执行的任务,因为有TimerTask类是一个抽象类,必须有其子类对其实现来完成定时任务的功能。

TimerCallClient .java客户端代码:

Timercallclient.java代码  Java定时器Timer,TimerTask每隔一段时间随机生成数字
  1. package com.skyon.gd.test;  
  2.   
  3. import java.util.Timer;  
  4.   
  5. /**  
  6.  *   
  7.  * @author sandy  
  8.  *   
  9.  */  
  10. public class TimerCallClient {  
  11.     public static void main(String[] args) {  
  12.         run();  
  13.     }  
  14.     private static void run() {  
  15.         Timer timer = new Timer();  
  16.         NewTimerTask timerTask = new NewTimerTask();  
  17.         //程序运行后立刻执行任务,每隔100ms执行一次  
  18.         timer.schedule(timerTask, 0, 100);  
  19.     }  
  20.   
  21. }  

 NewTimerTask.java代码:

Java代码  Java定时器Timer,TimerTask每隔一段时间随机生成数字
  1. /** 
  2.  *  
  3.  */  
  4. package com.skyon.gd.test;  
  5.   
  6. import java.util.Random;  
  7. import java.util.TimerTask;  
  8.   
  9. /** 
  10.  * @author sandy 
  11.  * TimerTask类是一个抽象类 
  12.  */  
  13. public class NewTimerTask extends TimerTask {  
  14.   
  15.     @Override  
  16.     public void run() {  
  17.         createRandomNumber();  
  18.         createRandomNumberFromMathRandom();  
  19.     }  
  20.     //用纯Math中的方法来随机生成1-10之间的随机数  
  21.     private void createRandomNumberFromMathRandom() {  
  22.         int j=(int)(Math.round(Math.random()*10+1));  
  23.         System.out.println("随机生成的数字为:"+j);  
  24.           
  25.     }  
  26.     //用Random类的方式来随机生成1-10之间的随机数  
  27.     private void createRandomNumber(){  
  28.          Random random=new Random(System.currentTimeMillis());  
  29.          int value=random.nextInt();  
  30.          value=Math.abs(value);  
  31.          value=value%10+1;  
  32.          System.out.println("新生成的数字为:"+value);  
  33.     }