# Countdown in Java



## maint (17. Nov 2004)

Hallo alle zusammen!

Weiß jemand, wie man einen Countdown in Java einrichtet, also z.B. eine Variable einrichtet, die sich jede Sekunde um 1 verringert oder erhöht? Ich würde gerne eine Anwendung genau 2 Minuten laufen lassen. Über eure Hilfe und/oder Code würde ich mich sehr freuen. Danke im Vorraus.


----------



## Guest (17. Nov 2004)

Mach einen Thread der 2 Minuten schläft und dann dein Programm beendet


----------



## maint (17. Nov 2004)

Wie mache ich das denn?
Ich programmiere erst seit kurzer Zeit...


----------



## Roar (17. Nov 2004)

Thread.sleep(long milllisekunden) lässt den aktuellen thread schlafen, System.exit() solltest du kennnen :-/


----------



## Gast (17. Nov 2004)

Um ehrlich zu sein, nein.
Mein Lehrer wollte mir System.exit() nicht verraten, keine Ahnung wieso...
Aber dankeschön für die Antwort ^^


----------



## Heiko (17. Nov 2004)

Wahrscheinlich wollte er, dass du dir mal die API anschaust. Es hilft dir nämlich nix, wenn du dir deine Aufgaben lösen läßt.


----------



## CelikBlek (17. Nov 2004)

was sind das für lehrer, die einen verhindern etwas zu lernen.


----------



## Heiko (17. Nov 2004)

CelikBlek hat gesagt.:
			
		

> was sind das für lehrer, die einen verhindern etwas zu lernen.



siehe meinen Beitrag?


----------



## CelikBlek (17. Nov 2004)

ob das wirklich der grund war, wird er nur wissen


----------



## thE_29 (17. Nov 2004)

Nur mal so ne Frage, wenn es schon Countdown heißt, sollte man da nicht einen Timer mit TimerTask nehmen statt den kompletten Thread schlafen zu legen??

Ich finde halt dass das schöner wäre....

Ihr nutzt alle viel zu wenig die Timer!

TIMER AN DIE MACHT :bae:


----------



## L-ectron-X (18. Nov 2004)

Scheint mir (nur) in diesem Fall etwas Overkill. :wink:


----------



## Guest (18. Nov 2004)

Ich würde mal behaupten, dass es bei Threads genauso ist, wie mit Pointer in C++.
Wenn man die Wahl/Möglichkeit hat ein bestimmtes Problem auch ohne zu lösen, sollte 
man dies auch tun. Allein schon um keine 'low level API' wie Threads bzw. Pointer zu
verwenden.


----------



## thE_29 (18. Nov 2004)

Genau das meine ich!

Sogar in der SUN Api steht, das man wenn es geht Timer statt Threads nehmen soll, also sollte man das auch tun 

Und Pointer in C++ sind ja net so schlimm, nur wenns zuviel wird und der Kopf dann ansteht nervts halt.... aber ->  ist schon cool  

und dann noch * 

ach ich sollt mal wieder öfter C++ programmieren, da merkt man erst das Java viel für einen macht!


----------



## Bleiglanz (18. Nov 2004)

> Mein Lehrer wollte mir System.exit() nicht verraten, keine Ahnung wieso...


unglaublich, endlich mal ein guter Lehrer!

System.exit() gehört auf den Müllhaufen, wozu gibts return?
Denk mal drüber nach, was passiert, wenn du irgendwo in deinem ganzen Klassenwust ein paar System.exit(0) einbaust.

Tipp: andere Leute, die dein Meisterwerk z.b. als jar geliefert bekommen, werden sich über unmotivierte "Abschaltungen" wundern


----------



## maint (18. Nov 2004)

Hmmm... Wie funktioniert denn der TimerTask Befehl?


----------



## thE_29 (18. Nov 2004)

Das hier ist ein anonye TimerTask-Klasse der 1mal nach 1000 milliseks ausgeführt wird


```
new java.util.Timer().schedule(new java.util.TimerTask(){
public void run(){
dosth();
}
},1000);
```


Dieser hier wird 0 Sekunden nach dem Start und alle 1000 millisekunden aufgerufen, bis man cancel() sagt!


```
Timer timer = new Timer();
timer.schedule(new java.util.TimerTask() {
public void run(){
dosth();
}
},0,1000);
//....
timer.cancel(); //bricht ab
```


----------



## maint (21. Nov 2004)

Dankeschön! ^^


----------

