Je ressens pour toi... comme un ancien .NET programmeur, j'ai posé les mêmes questions, le temps de l'API .NET (timespans, la surcharge d'opérateur) est très pratique.
Tout d'abord, pour créer une date spécifique, vous utilisez une API obsolètes, ou:
Calendar c = Calendar.getInstance();
c.set(2000, 31, 12)
Pour soustraire un jour de vous faire du mal, des choses comme
Date firstDate = ...
Calendar c = Calendar.getInstance();
c.setTime(fistDate);
c.add(Calendar.DATE,-1);
Date dayAgo = c.getTime();
ou pire
Date d = new Date();
Date d2 = new Date(d.getTime() - 1000*60*60*24);
Pour savoir de combien de temps s'est écoulé entre deux dates (jours / semaines / mois)... c'est encore pire
Cependant DateUtils d'apache (org.apache.commons.lang.time.DateUtils
) offre certaines des méthodes pratiques et je me suis retrouvé à l'aide seulement d'eux ces derniers temps
Comme Brabster écrit, Joda Time est aussi une bonne bibliothèque externe, mais apache semble plus "commun" qu'autre chose...