2011-12-10 87 views
0

我在課堂上宣佈這兩個雙打。雙倍不減

private double interval = 2; 
private double interval2 = 3; 

這兩個間隔控制第二個基於定時器。

現在在代碼中我有一個每秒更新一次的IUpdate方法。每一秒我檢查用戶的得分,如果它的一定的分數我嘗試:

interval = interval - .5 
interval = interval2 - .5; 

我嘗試從間隔本身減去1.5到提供新的double我定時器

timer.setInterval(interval); 
timer.setInterval(interval2); 

現在唯一的問題是我注意到沒有東西從我的變量中減去。我記錄他們時,他們是SUPPOSED更改,但沒有任何反應。有什麼我在這裏失蹤?

+0

應該'interval = interval2 - .5;'是'interval2 = interval2 - .5;'?另外考慮使用' - ='運算符。 – AusCBloke

+0

是的,它應該,但問題仍然存在。 –

+0

@AusCBloke如果你張貼作爲答案不正確的標記。它解決了我的問題。大聲笑 –

回答

5

您有:

interval = interval2 - .5; 

intervalinterval2,因此interval2不被修改。計時器沒有變化的原因是因爲interval2沒有被分配一個新的值,這是因爲定時器總是被置爲值interval2的間隔:

timer.setInterval(interval); 
timer.setInterval(interval2); 

timer.setInterval()到第二呼叫抵消了第一。

+2

明白了。這很有道理。謝謝 –