Ho una funzione che a volte deve restituire un Date
altre volte a DateTime
(Joda-Time).Funzione modello Java
static public <T extends Object> T convertTimeForServer(DateTime toSave) {
DateTime temp = null;
try {
temp = toSave.withZone(DateTimeZone.forID(getServerTimeZone()));
} catch (Exception e) {
}
T toReturn = null;
if (toReturn.getClass().equals(temp)) {
return (T) temp;//Return DATETIME
} else {
return (T) temp.toDate();//Return DATE
}
}
È l'approccio giusto?
Come si usa?
come questo (timerHelper è il nome della classe):
DateTime t = timerHelper.<DateTime>convertTimeForServer(new DateTime());
Date t2 = timerHelper.<Date>convertTimeForServer(new DateTime());
or
DateTime t = (DateTime)timerHelper.convertTimeForServer(new DateTime());
Date t2 = (Date)timerHelper.convertTimeForServer(new DateTime());
E come utilizzare questa funzione invece?
Solo curioso: cosa succede se restituisci sempre DateTime? –
No, perché nel codice a volte ho bisogno di un 'Date' altre volte a' DateTime' – user72708
Bene, in quei momenti in cui hai bisogno di una data, chiama 't.toDate()'. – RealSkeptic