Tout d'abord, sauf si vous êtes coincé avec l'aide de framework 1.1, vous ne devriez pas être à l'aide d'un ArrayList à tous. Vous devez utiliser un typage fort générique List<DateTime> à la place.
Pour un tri personnalisé il y a une surcharge de la Sort méthode qui prend un comparateur. Par l'inversion de la comparaison régulière, vous obtenez un tri dans l'ordre décroissant:
Tout d'abord, sauf si vous êtes coincé avec l'aide de framework 1.1, vous ne devriez pas être à l'aide d'un
ArrayList
à tous. Vous devez utiliser un typage fort génériqueList<DateTime>
à la place.Pour un tri personnalisé il y a une surcharge de la
Sort
méthode qui prend un comparateur. Par l'inversion de la comparaison régulière, vous obtenez un tri dans l'ordre décroissant:Mise à jour:
Avec les expressions lambda en C# 3, le délégué est plus facile de créer:
OriginalL'auteur Guffa
"Guffa" déjà dit, vous ne devriez pas être à l'aide de
ArrayList
sauf si vous êtes dans .NET 1.1; ici est une simpleList<DateTime>
exemple, si:Vos dates sont maintenant triés dans l'ordre décroissant.
+1 pour une bonne utilisation de la construire dans les méthodes.
Je pense que ce n'est pas bon pour les grands tableaux
OriginalL'auteur Marc Gravell
Utiliser un DateTime Comparateur sortes dans le sens inverse. Appel De Tri.
...et modérément plus efficace (évite de le multiplier par comparaison).
OriginalL'auteur j0tt
Si vous êtes en utilisant .NET 3.5:
OriginalL'auteur nightcoder
Voici un exemple de la coutume IComparer utilisation: Comment supprimer les doublons int[][]
OriginalL'auteur abatishchev