Quel entier ne DateTime.CompareTo fait retour?
J'ai été à la recherche d'une réponse pour un certain temps maintenant, mais nulle part ailleurs je trouve.
J'étais surtout à la recherche à cette page. Là, il dit que le CompareTo
méthode retourne un entier indiquant si elle est antérieure, la même ou plus tard. Je comprends l'utilisation de l'informatique et je comprends que pour les temps antérieurs, l'entier est négatif, pour la même il est à 0 etc.
Mais qu'est-ce que cet entier? Est-il retourner la différence en quelques secondes, millisecondes, les tiques, ou peut-être rien du tout? J'espère que vous pourrez m'aider, et si quelqu'un peut trouver un autre post avec cette question, s'il vous plaît dites-moi. Je suis honnêtement très surpris de voir que je ne pouvais pas trouver une question à ce sujet tout de suite...
OriginalL'auteur phil13131 | 2012-12-02
Vous devez vous connecter pour publier un commentaire.
La documentation est en fait dans le IComparable page de l'interface (qui DateTime outils):
http://msdn.microsoft.com/en-us/library/system.icomparable.aspx
OriginalL'auteur kabaros
Il n'y a rien de spécifié, d'après MSDN:
Si vous voulez comparer les jours entre les 2 DateTimes vous devriez être à la recherche de quelque chose comme ceci:
OriginalL'auteur RvdK
C'est un détail d'implémentation qui vous ne devriez jamais avoir besoin de savoir et peut changer à tout moment. Le seul 3 catégories sont les suivantes:
Si vous vous trouvez à l'aide de quelque chose de plus, quelque chose est mauvaise.
A mon avis Le fait que c'est un détail d'implémentation ne signifie pas que je ne devrait jamais besoin de savoir à ce sujet, ou plutôt, ne pas voulez pour le savoir. Le fonctionnement interne du cadre logique, sont intéressants en eux-mêmes.
pour trouver la différence entre deux temps: soustraire pour obtenir une plage de temps
Ce n'est pas ce détail de l'implémentation des moyens. Détail de l'implémentation signifie qu'il peut modifier à tout moment et sans avertissement. Donc, vous ne devriez pas asume il sera des valeurs exactes.
Je comprends que. Ma seule demande est que la question est intéressante, en dépit d'être un détail d'implémentation.
OriginalL'auteur Marc Gravell
Aussi loin que je peux dire que le nombre est toujours -1, 0 ou 1.
Quelles valeurs souhaitez-vous donner à obtenir un certain nombre d'autres que ceux-là?
tout négatif ou positif, respectivement.
OriginalL'auteur Rotem
C'est la mise en œuvre de IComparable.CompareTo. Cela signifie qu'il sera de retour 0 en cas d'égalité, entier positif si grand et entier négatif lorsque les petits.
OriginalL'auteur Euphoric
Vous pouvez choisir les unités spécifiques pour comparer avec TimeSpan
DateTime local_time = DateTime.Now; //current time
DateTime remote_time = DateTime.Now.AddMinutes(-2); //two minutes delayed
TimeSpan time_difference = (local_time - remote_time);
if (time_difference.Minutes <= 5) //compare specific units desired
{
bool within_tollerance = true;
}
OriginalL'auteur John