Je suis dérouté par l'API Java de la classe Date. Tout semble être déconseillé et des liens vers la classe Calendar. J'ai donc commencé à utiliser les objets Calendrier pour faire ce que j'aurais aimé faire avec une date, mais intuitivement, cela me gêne d'utiliser un objet Calendrier alors que tout ce que je veux faire, c'est créer et comparer deux dates.
Y a-t-il un moyen simple de faire ça? Pour l'instant je fais
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(0);
cal.set(year, month, day, hour, minute, second);
Date date = cal.getTime(); // get back a Date object
Vous pouvez utiliser SimpleDateFormat
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
Date d = sdf.parse("21/12/2012");
Mais je ne sais pas si cela devrait être considéré plus juste que d'utiliser le calendrier ...
L'excellente bibliothèque joda-time est presque toujours un meilleur choix que les classes Date ou Calendar de Java. Voici quelques exemples:
DateTime aDate = new DateTime(year, month, day, hour, minute, second);
DateTime anotherDate = new DateTime(anotherYear, anotherMonth, anotherDay, ...);
if (aDate.isAfter(anotherDate)) {...}
DateTime yearFromADate = aDate.plusYears(1);
Vous pouvez essayer joda-time .