web-dev-qa-db-fra.com

Ajouter un jour dans Joda-Time DateTime

J'ai rendez-vous Wed May 08 00:00:00 GMT+06:30 2013. J'y ajoute un jour en utilisant Joda-TimeDateTime comme ceci.

DateTime dateTime = new DateTime(date);
dateTime.plusDays(1);

Quand j’imprime dateTime, j’ai eu cette date 2013-05-08T00:00:00.000+06:30. La date de Joda n'a pas ajouté un jour. Je n'ai trouvé aucune erreur.

Merci

75
user1156041

La méthode plusDays n'est pas un mutateur. Il retourne une copie de l'objet DateTime donné avec la modification apportée plutôt que de modifier l'objet donné.

Si vous voulez réellement changer la valeur de la variable dateTime, vous aurez besoin de:

DateTime dateTime = new DateTime(date);
dateTime = dateTime.plusDays(1);
157
Don Roby

Si vous souhaitez ajouter des jours à l'instance d'heure de la date actuelle, utilisez MutableDateTime

MutableDateTime dateTime = new MutableDateTime(date);  
dateTime.addDays(1);
30
Ilya