如何在x毫秒內打印行並在前一行之後打印x毫秒?定時打印行
我想在控制檯上做一個'Lyric Video'。我已經使用
t.schedule(new TimerTask(){public void run(){System.out.print("");}}, 0, 1000);
嘗試,但它打印的話每一秒。
我試過谷歌,但我似乎無法得到正確的話。
如何在x毫秒內打印行並在前一行之後打印x毫秒?定時打印行
我想在控制檯上做一個'Lyric Video'。我已經使用
t.schedule(new TimerTask(){public void run(){System.out.print("");}}, 0, 1000);
嘗試,但它打印的話每一秒。
我試過谷歌,但我似乎無法得到正確的話。
這裏:
t.schedule(new TimerTask(){public void run(){System.out.print("");}}, 0, 1000);
這1000給人的毫秒數被執行定時任務時。
或更精確地說:時間段- 連續任務執行之間的時間(以毫秒爲單位)。
所以:只是改變你的x
價值。
而real答案在這裏:不要只是盲目地使用一些API,你找到的地方。如有疑問,請轉到javadoc並閱讀您正在調用的方法,例如schedule()。你會發現我上面引用的信息!
關於您的後續問題:再次;轉到javadoc爲定時器類。該類必須使用方法cancel()
和purge()
,您可以使用它來防止將來執行。
換句話說:
所以,當你想停止 10秒後,你可以這樣做:
t.schedule(new TimerTask(){public void run(){ t.cancel();}}, 10
1000);
試着改變你的1000
達你想要毫秒。這1000
意味着你正在等待的第二個。如果它是一個選項,你也可以嘗試Thread.sleep()函數。 記住傳遞給該函數的值以毫秒爲單位。
希望它有幫助! 此致敬意:)
代碼中的值1000
實際上是一個毫秒值。
t.schedule(new TimerTask(){public void run(){System.out.print("");}}, 0, 1000);
您可以根據您的要求更改它。就像如果你想等5秒鐘,你可以把它改成5 * 1000 = 5000
。
t.schedule(new TimerTask(){public void run(){System.out.print("");}}, 0, 5000);
感謝您的快速接受! – GhostCat