Java延时的3种实现方法举例

 更新时间:2023年07月11日 11:05:12   作者:懒鱼七忆  
这篇文章主要给大家介绍了关于Java延时的3种实现方法举例,java开发中常会用到延时任务,文中通过实例代码介绍的非常详细,对大家的学习具有一定参考借鉴价值,需要的朋友可以参考下

一、Robot,Thread和Timer

import java.awt.AWTException;
import java.awt.Robot;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class Text1 {
    public static void main(String[] args) throws AWTException {
        //延时方法一
        Robot robot = new Robot();
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ");
        System.out.println("延时前 :"+dateFormat.format(new Date()));
        robot.delay(2000);
        System.out.println("延时后 :"+dateFormat.format(new Date()));
        //延时方法二
        try {
            Thread.sleep(3000);
            System.out.println("Thread延时后 :"+dateFormat.format(new Date()));
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        //延时方法三
        Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                System.out.print("----时间: "+dateFormat.format(new Date()));
                this.cancel();
            }
        }, 2000);
        System.out.print("三秒后打印时间:");
        }
    }

打印:

二、补充:

关于方法二的 this.cancel(); 解释:

取消此计时器任务。如果任务已计划一次执行,但尚未运行,或尚未计划,则它将永远不会运行。如果任务已计划重复执行,则它将永远不会再次运行。(如果此调用发生时任务正在运行,则任务将运行到完成,但不会再次运行。)

请注意,从重复计时器任务的run方法中调用此方法绝对保证计时器任务不会再次运行。

此方法可以重复调用;第二次和随后的呼叫没有效果。

返回:如果此任务计划为一次性执行但尚未运行,或此任务计划重复执行,则返回true。如果任务计划为一次执行且已运行,或任务从未计划,或任务已取消,则返回false。(粗略地说,如果该方法阻止一个或多个计划执行发生,则返回true。)

总结

到此这篇关于Java延时的3种实现方法的文章就介绍到这了,更多相关Java延时方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决Java API不能远程访问HBase的问题

    解决Java API不能远程访问HBase的问题

    这篇文章主要介绍了解决Java API不能远程访问HBase的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • Springboot如何读取resources下的json配置文件

    Springboot如何读取resources下的json配置文件

    这篇文章主要介绍了Springboot如何读取resources下的json配置文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Spring Boot配置Thymeleaf(gradle)的简单使用

    Spring Boot配置Thymeleaf(gradle)的简单使用

    今天小编就为大家分享一篇关于Spring Boot配置Thymeleaf(gradle)的简单使用,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Java获取UTC时间的方法详解

    Java获取UTC时间的方法详解

    这篇文章主要介绍了Java获取UTC时间的方法,结合具体实例形式详细分析了Java针对时区、本地时间、时间偏移量等相关操作技巧,需要的朋友可以参考下
    2017-04-04
  • JAVA使用爬虫抓取网站网页内容的方法

    JAVA使用爬虫抓取网站网页内容的方法

    这篇文章主要介绍了JAVA使用爬虫抓取网站网页内容的方法,实例分析了java爬虫的两种实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Java中ArrayList和LinkedList之间的区别_动力节点Java学院整理

    Java中ArrayList和LinkedList之间的区别_动力节点Java学院整理

    这篇文章主要为大家详细介绍了Java中ArrayList和LinkedList之间的区别,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • Java之OutputStreamWriter流案例详解

    Java之OutputStreamWriter流案例详解

    这篇文章主要介绍了Java之OutputStreamWriter流案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • Maven的pom.xml中resources标签的用法

    Maven的pom.xml中resources标签的用法

    本文主要介绍了Maven的pom.xml中resources标签的用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Java8 forEach常用场景代码实例

    Java8 forEach常用场景代码实例

    这篇文章主要介绍了Java8 forEach常用场景代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • SpringBoot2整合ElasticJob框架过程详解

    SpringBoot2整合ElasticJob框架过程详解

    这篇文章主要介绍了SpringBoot2整合ElasticJob框架过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03

最新评论