Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    evitare la sovrapposizione tra orari e durata

    Salve a tutti...vi chiedo e vi imploro di aiutarmi...sto creando un agenda e per ogni singola persona non deve essere fissato un nuovo appuntamento per tutta la durata di uno già fissato. grazie in anticipo.

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Direi che per darti una mano è necessario fare tante supposizioni, visto che non hai dettagliato gran chè...

    Immagino che per le date/ore tu utilizzi un GregorianCalendar... se è così, la documentazione parla molto chiaro: ci sono i metodi after() e before() (ereditati da Calendar) che fanno proprio al caso tuo.

    Essi restituiscono un booleano che indica, reispettivamente, se la data/ora su cui il metodo viene invocato è successiva o precedente alla data/ora passata come parametro.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Dettagliattamente, il mio problema è questo... verifica correttezza e completezza dei dati inseriti e ke nn ci siano sovrapposizioni con altri appuntamenti già definiti per quello stesso orario, tenendo anche conto della durata.

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da likioti687
    Dettagliattamente, il mio problema è questo... verifica correttezza e completezza dei dati inseriti e ke nn ci siano sovrapposizioni con altri appuntamenti già definiti per quello stesso orario, tenendo anche conto della durata.
    Quando cercherai di inserire un nuovo appuntamento, è logico, dal punto di vista concettuale, che dovrai prima andare a verificare se il nuovo appuntamento non "cade" in un orario degli appuntamenti già memorizzati.

    Ma come e dove fare ciò dipende fortemente da quali classi hai fatto, da come le hai strutturate, da quali oggetti hai usato. Per un appuntamento hai indicato inizio/fine o inizio/durata? E hai usato un Date? O un Calendar? O altro (es. semplici campi int per ore ecc...)?

    Senza sapere queste cose non ti si può aiutare in alcun modo. Non abbiamo la sfera di cristallo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    in realtà ho utilizzato un Inizio Durata ma nn capisco a cosa serva un Date o Calendar... scusate per questa domanda...........

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da likioti687
    in realtà ho utilizzato un Inizio Durata
    Ok ma per rappresentare "inizio" e "durata" cosa hai usato??
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    :master:

    Potresti usare un albero di intervalli :master:
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  8. #8
    ovvero?!

  9. #9
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Una domanda banale: hai scritto qualche riga di codice da qualche parte? Puoi postarla?

    Se non sai nemmeno come si rappresentano le date in Java, mi sa che si fa poca, pochissima strada...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  10. #10
    ok, allora questo è il mio codice:
    codice:
    	    do {
    	    	System.out.println("Orario hh:mm : ");
    	    	dati[3] = in.nextLine();
    	    	if (dati[3].equalsIgnoreCase("Q")) {
    	    		System.out.println("");
    	    		return;
    	    	}
    	    } while (dati[3].equals("") ||  dati[3].length() != 5 || ! (dati[3].substring(2,3).equals(":")));
    		do {                                              
    		    System.out.println("Durata hh:mm : ");
    		    dati[4] = in.nextLine();
    	    	if (dati[4].equalsIgnoreCase("Q")) {
    	    		System.out.println("");
    	    		return;
    	    	}
    		} while (dati[4].equals("") || (dati[4].length() != 5) || ! (dati[4].substring(2,3).equals(":")));
    ho solo immesso l'input...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.