2016-04-29 72 views
-3
package timerrr; 

import java.util.*; 

public class Timerrr { 

    public static void main(String[] args) { 

    Timer timer = new Timer(); 

    timer.schedule(
     new TimerTask() { 
      int i = 0; 

      @Override 
      public void run() { 

      System.out.println("timer is still running"); 
      } 
     }, 
     1 * 150 * 100, 
     1 * 50 * 100); 
    } 
} 
+0

[看看這個問題(http://stackoverflow.com/questions/24104313/how-to-delay-in-java)有關如何等待指定數量的在Java中秒。 –

+0

我已經爲你解決了題目。 –

回答

1
在你重寫run方法增量

我,如果我= 5取消計時器:

timer.schedule(new TimerTask() { 
    int i = 0; 

    @Override 
    public void run() { 
     i++; 
     if(i==5) { 
      this.cancel(); 
     } 
     else { 
      //YOUR CODE HERE 
     } 
    } 
}, startDelay, fixedDelay); 
0

這裏應該是一個更簡單的方法做你想要什麼: 調用Thread.sleep();方法是,由於某種原因,我最喜歡的事情之一。你只需將其包圍在一個try/catch塊,像這樣:

public static void main(String[] args) { 
 
    for (int i = 0; i <= 5; i++) { 
 
    System.out.println("timer is still running"); 
 
    try { 
 
     Thread.sleep(5000); 
 
    } catch (InterruptedException e) { 
 
     e.printStackTrace(); 
 
    } 
 
    } 
 
}

您可能希望把它它自己的方法與它自己的線程,這樣就可以有其他的事情在發生這種情況時運行。

希望這有助於:)