Maison > Java > javaDidacticiel > Comment puis-je calculer la différence entre deux dates sous Android ?

Comment puis-je calculer la différence entre deux dates sous Android ?

Susan Sarandon
Libérer: 2024-11-25 02:32:14
original
885 Les gens l'ont consulté

How Can I Calculate the Difference Between Two Dates in Android?

Calcul de la différence entre les dates sous Android

Déterminer la différence entre deux dates en Java et Android est une tâche courante pour de nombreuses applications. Dans cet article, nous explorerons différentes approches pour trouver la différence en jours entre une date actuelle et une date spécifique au format « aaaa/mm/jj ».

Approximativement la différence

Une méthode simple pour estimer la différence entre deux dates consiste à convertir les dates en millisecondes à l'aide de la méthode getTimeInMillis() de la classe Calendar. En soustrayant les millisecondes de la date antérieure des millisecondes de la date ultérieure et en divisant le résultat par le nombre de millisecondes dans une journée (86400000), nous obtenons un nombre approximatif de jours.

long days = (today.getTimeInMillis() - thatDay.getTimeInMillis()) / (24 * 60 * 60 * 1000);
Copier après la connexion

Analyse une date au format chaîne

Pour calculer la différence entre une date actuelle et une date stockée sous forme de chaîne dans au format « aaaa/mm/jj », nous pouvons utiliser la classe SimpleDateFormat pour analyser la chaîne et créer un objet Date. La classe Calendar peut ensuite être utilisée pour obtenir les valeurs numériques des composants de date.

String strThatDay = "1985/08/25";
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd");
Date d = formatter.parse(strThatDay);
Calendar thatDay = Calendar.getInstance();
thatDay.setTime(d);
Copier après la connexion

Utiliser JodaTime pour la précision

Pour des calculs de date plus précis et fiables, il est recommandé d'utiliser une bibliothèque tierce telle que JodaTime. JodaTime fournit un ensemble complet de méthodes pour manipuler et comparer les dates.

DateTime startDate = new DateTime(2010, 8, 25, 0, 0);
DateTime today = new DateTime();
Days days = Days.daysBetween(startDate, today);
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal