Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    24

    Java - Somma tra una data e un intero

    Salve a tutti,
    ho una domanda.

    Ho creato una funzione statica, che fa la somma tra una data e un valore intero (che rappresentano un tot di giorni)

    public static String sommadateconsoglie(Date today, int giorni){

    Calendar cal = Calendar.getInstance();




    cal.setTime(today);
    cal.add(Calendar.DAY_OF_MONTH, giorni);

    SimpleDateFormat out=new SimpleDateFormat("yyyy/MM/dd");
    String end = out.format(cal.getTime()); //data di oggi piu valore giorni


    return end;
    }


    Ora questa funzione è ok , ma sto trovando difficolta nel fare un controllo sui giorni del weekend:quindi se oggi è mercoledi 14 e ci devo sommare 3 giorni lavorativi , deve finire di lunedi,e non di sabato. Mi potete dare un consiglio su come fare questo controllo??
    Grazie

    F

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Java - Somma tra una data e un intero

    Originariamente inviato da Fabbero
    sto trovando difficolta nel fare un controllo sui giorni del weekend:quindi se oggi è mercoledi 14 e ci devo sommare 3 giorni lavorativi , deve finire di lunedi,e non di sabato. Mi potete dare un consiglio su come fare questo controllo??
    Gli approcci potrebbero essere almeno 2:

    1) Vai avanti di 1 giorno per volta in ciclo (finché non esaurisci gli N giorni da aggiungere) e salti i giorni che non ti interessano (il Calendar ti dice anche quale è il giorno della settimana)

    2) Usi una logica più "matematica", sapendo il giorno della settimana iniziale, sapendo il numero di giorni da aggiungere e sapendo quali giorni della settimana saltare, calcoli quanti giorni realmente dovrai aggiungere per saltare quei giorni particolari. A quel punto basta un add.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    24
    ciao andbin grazie per la risposta
    effettivamente io avevo pensto alla tua prima soluzione,
    e avevo scritto una bozza del tipo:

    //for(int i=0;i<giorni;i++){
    // if today is saturday or sundayy{
    //app =app+1
    // }
    }
    //app=app+a

    dove se trovavo giorni del wekend nel controllo li mettevo in un contatore e li sommavo al valore di partenza alla fine.

    Pero mi sfugge quel controllo che hai anche detto tu.. come faccio a vedere se oggi è sabato o domenica? mi sfugge completamente la sintassi..e mi ci sto impicciando c_c

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Fabbero
    come faccio a vedere se oggi è sabato o domenica? mi sfugge completamente la sintassi..
    Il field è DAY_OF_WEEK e i valori possibili sono le costanti SUNDAY, MONDAY, ecc.... (nota: parte da SUNDAY che vale 1 ... segue lo stile anglosassone)
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.