试图找出如何在java上每秒显示一些东西

时间:2014-04-15 06:38:28

标签: java timer

所以基本上我正在学习线程。我试图弄清楚如何测试是否已经过了一秒钟。所以我的程序应该每秒传递1 2 3 4 5。任何人都可以帮助确定如何确定是否已经过了一秒?

编辑: 谢谢所有帮助过的人。

5 个答案:

答案 0 :(得分:0)

正如madprogrammer所说,你只是睡了1000毫秒。

Thread.sleep(milliseconds)...// so 1000 means 1 second.

没有把你的逻辑放在run方法中。当你的线程休眠1秒钟时,你的run方法将每1秒运行一次。希望这有帮助

答案 1 :(得分:0)

试试这个......我想你想要这样的输出

int seconds = 0;
while (true) {
    System.out.println(seconds++);
    try {
        Thread.sleep(1000);
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

答案 2 :(得分:0)

好吧,看看timer班。

答案 3 :(得分:0)

int count = 0;    
for (;;) {    
    try {    
        Thread.sleep(1000);    
        // write your code over here    
        count++;    
    } catch (InterruptedException e) {    
        // TODO Auto-generated catch block    
        e.printStackTrace();    
    }    
}

答案 4 :(得分:0)

创建一个线程并调用Thread.sleep(milliseconds)方法使线程休眠一段特定的时间间隔。 看一下下面的代码

new Thread(new Runnable() {
    private int count;
    @Override
    public void run() {
        while (true) {
            try {
                System.out.println("second " + (++count));
                Thread.sleep(1000);//1000 milliseconds, i.e. 1 second
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
}).start();