Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    26

    [JAVA] Problemi di Date

    Ciao... ho un po' di casini con il confronto tra data locale del sistema e data inserita via tastiera... il boolean sembra dare sempre false... why? è sbagliato il confronto?

    Date data = new Date( System.currentTimeMillis() );
    if(data.after(temp.getsubdate())){

    subdate ha solo i campi inseriti con getYear(), getMonth() e getDate(). Il resto non è neanche inizializzato...

    Grazie a chi risponde
    ciao

  2. #2
    Controlla cosa effettivamente viene memorizzato nella variabile temp, e che ti restituisca un oggetto di tipo data che rappresenti la data che hai fissato...
    Dato che non so cosa sia temp e come viene implementato il metodo getsubdate non so dirti altro
    (tra l'altro il costruttore di date in cui gli passi i millisecondi attuali è ridondante: viene già inizializzata con la data del momento della sua allocazione)
    23-08-2005: Udinese in cémpions lìg
    Questa estate l'ho passata a Tallin

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    26
    temp è una classe che contiene la data. Mentre getsubdate è un metodo di temp vuoto che ritorna una Date (ho usato il costruttore vuoto, poi ho riempito i campi year month e day con le funzioni set) quindi dovrebbe funzionare. Non ho capito come mai hai detto che l'inizializzazione è ridondante, potresti rispiegare?
    Il problema principale però è la sintassi del confronto. Volevo sapere se potrebbe funzionare o no.(se fosse possibile vorrei un po di codice)
    Grazie e saluti a tutti
    Ciao

  4. #4
    i metodi set e get della classe Date sono tutti deprecati, quindi dovresti implementare il tutto tramite un calendar, e farti restituire una data...
    cmq, a parte sto dettaglio (deprecati non vuol dire che non funzionano + ,solo che ci sono modi ritenuti migliori di fare le cose) direi che il confronto dovrebbe funzionare
    Ripeto, controlla i valori delle due date che vuoi far confrontare, magari i valori sono sballati a monte di quel confronto

    new Date() e new Date(System.System.currentTimeMillis()) sono due chiamate che sortiscono lo stesso effetto, ovvero costruiscono una data col tempo settato a quello del momento in cui vengono costruite
    Tuttavia con la seconda, fai una chiamata in +, tutto qui
    23-08-2005: Udinese in cémpions lìg
    Questa estate l'ho passata a Tallin

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.