一種方式來做到這一點,很好地運行定時器一個單獨的線程對象。 ..這個線程應當辦理的時間更新和當玩家的時間用完會然後觸發某些事件...
還是更喜歡,實現在一個單獨的線程,其遞增時觸發一個計數器在這種情況下,在幾秒鐘內,您可以通過調用睡眠來做到這一點()..
計時器線程對象應保持其跟蹤的當前時間的變量..
在你的程序的主要方法,您就可以繼續檢查該變量的值,作爲主循環或許是先決條件,
的想法是存在的,我認爲,僅僅是一個想法!
僞
class Timer extends Thread{
int current_time = 0;
public void run(){
sleep(1000);
current_time += 1;
}
public void synchronized getCurTime(){
return current_time;
}
}
class Game{
public Game(){
Timer timer = new Timer();
timer.start();
while (timer.getCurTime() <16){
//get the guess of the user
//checks if it's correct
// if it is correct, output you win and break!
}
//time runs out
}
}
上下文可能很重要。我認爲這是一個控制檯程序,而不是一個GUI,對嗎?什麼是Stdin? readString()? – 2011-02-05 17:55:29
你是否學過線程?如果沒有,也許你應該在一個while()循環中執行計時器,該循環也檢查輸入。這不是一個好的方法,但也許程序的目的是顯示單個線程的侷限性。 – Cymen 2011-02-05 18:00:24
Stdin.readString()是我們學習如何從用戶讀取字符串。 這不是一個GUI,它只是一個基於文本的程序。 我不知道什麼線程是 – 2011-02-05 18:01:56