Java中的时间间隔

rseugnpd  于 2022-11-27  发布在  Java
关注(0)|答案(4)|浏览(166)

如何在一段时间后调用一个方法?2例如,如果想在2秒后在屏幕上打印一个语句,它的过程是什么?

System.out.println("Printing statement after every 2 seconds");
wrrgggsh

wrrgggsh1#

答案是同时使用javax.swing.Timer和java.util.Timer:

private static javax.swing.Timer t; 
    public static void main(String[] args) {
        t = null;
        t = new Timer(2000,new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                System.out.println("Printing statement after every 2 seconds");
                //t.stop(); // if you want only one print uncomment this line
            }
        });

        java.util.Timer tt = new java.util.Timer(false);
        tt.schedule(new TimerTask() {
            @Override
            public void run() {
                t.start();
            }
        }, 0);
    }

显然,您可以只使用java.util.Timer实现2秒的打印间隔,但如果您想在一次打印后停止它,不知何故会很困难。
此外,不要在代码中混合使用线程,尽管您可以在没有线程的情况下这样做!
希望这会有帮助!

ca1c2owp

ca1c2owp2#

创建类:

class SayHello extends TimerTask {
    public void run() {
       System.out.println("Printing statement after every 2 seconds"); 
    }
}

从主方法调用相同的方法:

public class sample {
    public static void main(String[] args) {
        Timer timer = new Timer();
        timer.schedule(new SayHello(), 2000, 2000);

    }
}
pnwntuvh

pnwntuvh3#

可以使用Timer类实现

new Timer().scheduleAtFixedRate(new TimerTask(){
            @Override
            public void run(){
               System.out.println("print after every 5 seconds");
            }
        },0,5000);
pcww981p

pcww981p4#

**您必须尝试此代码。它适合我。**使用 Visual Studio 并创建Main.java文件,然后粘贴此代码并单击鼠标右键〉运行java

`public class Main {
public static void main(String[] args) {
  for (int i = 0; i <= 12; i++) {
    System.out.println(i);
    try {
        Thread.sleep(1000);
    } catch (Exception e) {
        // TODO: handle exception
    }
  }  
}

} `

相关问题