
Originariamente inviata da
LeleFT
No, per alcuni motivi:
1) Fai uso di API deprecate: getHours() e getMinutes() della classe Date sono state deprecate tanti, ma tanti anni fa (ma questo non è un problema: Java te lo permette lo stesso).
2) La logica non è corretta: se sono le 16:37 e avvio il programma chiedendo di spegnere il PC alle 16:50, il programma fa spegnere il PC immediatamente... perchè la condizione del while risulta subito falsa:
codice:
while(ora!=t.getHours()&&minuti!=t.getMinutes())
Perchè sia vera tale condizione (e, quindi, il programma continui ad attendere l'ora corretta), entrambi i membri del AND logico devono essere veri: ora, sono le 16:37 e voglio che si spenga alle 16:50, quindi:
codice:
(ora != t.getHours()) --> FALSE
Questo significa che:
1) Se l'ora è la stessa (vedi esempio), il PC si spegne subito perchè esce subito dal while: e sto guiardando solo l'ORA, i minuti non mi interessano nemmeno.
2) Se l'ora è diversa, si spegnerà appena scatta l'ora giusta e minuti 00, oppure appena i minuti sono quelli che sto aspettando, fregandomene dell'ora, per lo stesso motivo
Ciao.
