/// <summary> /// 反向比较器。 /// </summary> /// <typeparam name="T">类型参数</typeparam> public class ReverseComparer<T> : IComparer<T> { #region Fields private readonly IComparer<T> original; #endregion #region Properties public static ReverseComparer<T> Default { get; private set; } #endregion #region Constructors static ReverseComparer() { Default = new ReverseComparer<T>(Comparer<T>.Default); } public ReverseComparer(IComparer<T> original) { Contract.Requires(null != original); this.original = original; } #endregion #region Methods public int Compare(T x, T y) { return this.original.Compare(y, x); } #endregion }