Bonjour
J'ai résolu mon problème mais je ne comprends pas mon erreur. Si vous pouvez m'aider à comprendre.
En fait, je n'arrivais pas à modifier une variable avec la fonction reset. Je ne pouvais pas mettre à zero la variable "numberoftimes".
Voila le code qui ne marchait pas :
Et le code qui fonctionne :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 import java.util.Timer; import java.util.TimerTask; import KiloboltGame.StartingClass; public class Time extends TimerTask { public int numberoftimes; public Time(){ numberoftimes = 0; } //*************************** ça fonctionne pas *************************** public void reset() { numberoftimes = 0; } //*********************************************************************** @Override public void run() { numberoftimes++; } private Timer t; public void startTimer() { t = new Timer(); t.scheduleAtFixedRate(new Time(), 0, 1000); } }
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 import java.util.Timer; import java.util.TimerTask; import KiloboltGame.StartingClass; public class Time extends TimerTask { public int numberoftimes; public Time(){ numberoftimes = 0; } //*************************** ça fonctionne *************************** public void reset() { t.cancel(); numberoftimes = 0; startTimer(); } //******************************************************************** @Override public void run() { numberoftimes++; } private Timer t; public void startTimer() { t = new Timer(); t.scheduleAtFixedRate(new Time(), 0, 1000); } }