Ciao a tutti,
Vorrei creare un piccolo programmino di prova che ogni secondo stampa la data e l'ora corrente.
Dopo aver stampato 10 timestamp il programma deve terminare (usando il metodo cancel() della classe Timer)
Per fare ciò utilizzo la classe Timer, in questo modo
ma non ho la più pallida idea di come implementare il conteggio fino a 10. Difatti il timestamping prosegue all'infinito. Cosa ho sbagliato ?codice:package org.pad2.assignment0.Timer; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.*; class MyTask extends TimerTask{ private int cont=10; MyTask(Timer timer){ if (cont==0) timer.cancel(); } public void run(){ DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); Date date = new Date(); System.out.println("Current Date Time : " + dateFormat.format(date)); cont--; } } public class currentTime { public static void main(String[] args){ Timer timer = new Timer(); MyTask mytask = new MyTask(timer); timer.schedule(mytask, 0, 1000); } }
Ciao e grazie

Rispondi quotando