Intanto i metodi per settare gli attributi chiamali con il prefisso set (quindi non dem e rep, ma setDem, setRep ecc....), ancora meglio se scrivessi dei nomi più descrittivi (tipo setVotiRepubblicani ecc....)Originariamente inviato da tigerjack89 Otterrete una valutazione migliore se il vostro programma, nel caso in cui la situazione sia di parità dopo le ore 20 del primo martedì di Novembre, è in grado di assegnare la vittoria al partito che preferite, pur funzionando correttamente in ogni altro momento dell’anno.
Suggerimento: usate la classe GregorianCalendar.
Ora per quanto riguarda la prima parte penso di essere riuscito a risolvere il problema richiesto, in questo modo
Il problema invece lo trovo nella parte in corsivo. Ho sbattuto la testa dappertutto, ma non sono riuscito a venirne a capo :S. Penso sia da usare qualche metodo della classe Gregorian Calendar, ma non riesco a capire quale nemmeno dalla documentazione API.codice:public class VotingMachine { //Constructors public VotingMachine() { rep=0; dem=0; } //Methods public void rep() { rep=rep+1; } public void dem() { dem=dem+1; } public int getDem() { return dem; } public int getRep() { return rep; } public void reset() { rep=0; dem=0; } //Instance fields private int rep; private int dem; }
GregorianCalendar è semplicemente una classe che rappresenta il calendario gregoriano.
La consegna ti dice: ... se il risultato della votazione sia di parità dopo le ore 20 del primo martedì di novembre....
Il che vuol dire che ogni volta che recuperi il risultato della votazione (quindi quando richiami i due metodi get), devi controllare in cui recuperi il risultato della votazione sia minore del primo martedi del mese di novembre ore 20:00.
Per farlo crei un calendario con gregoriancalendar (quando crei una nuova istanza, automaticamente l'oggetto si inizializza con l'orario e data correnti) ed un altro settato con quelle date (ora 20:00 e data prima martedì di novembre (per vedere quale sia il primo martedi di novembre usa sempre gregoriancalendar)), ed usi il metodo before o after per vedere se una data è minore di un'altra.
Per i metodi della classe, puoi vedere direttamente la reference sul sito di oracle
GregorianCalendar

Rispondi quotando