本文整理汇总了C#中System.Tuple<T1,T2,T3,T4>.IStructuralComparable.CompareTo方法的典型用法代码示例。如果您正苦于以下问题:C# Tuple<T1,T2,T3,T4>.IStructuralComparable.CompareTo方法的具体用法?C# Tuple<T1,T2,T3,T4>.IStructuralComparable.CompareTo怎么用?C# Tuple<T1,T2,T3,T4>.IStructuralComparable.CompareTo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Tuple<T1,T2,T3,T4>
的用法示例。
在下文中一共展示了Tuple<T1,T2,T3,T4>.IStructuralComparable.CompareTo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Compare
//引入命名空间
using System;
using System.Collections;
using System.Collections.Generic;
public class PitcherComparer<T1, T2, T3, T4> : IComparer
{
public int Compare(object x, object y)
{
Tuple<T1, T2, T3, T4> tX = x as Tuple<T1, T2, T3, T4>;
if (tX == null)
{
return 0;
}
else
{
Tuple<T1, T2, T3, T4> tY = y as Tuple<T1, T2, T3, T4>;
return Comparer<T3>.Default.Compare(tX.Item3, tY.Item3);
}
}
}
public class Example
{
public static void Main()
{
Tuple<string, double, double, int>[] pitchers =
{ Tuple.Create("McHale, Joe", 240.1, 3.60, 221),
Tuple.Create("Paul, Dave", 233.1, 3.24, 231),
Tuple.Create("Williams, Mike", 193.2, 4.00, 183),
Tuple.Create("Blair, Jack", 168.1, 3.48, 146),
Tuple.Create("Henry, Walt", 140.1, 1.92, 96),
Tuple.Create("Lee, Adam", 137.2, 2.94, 109),
Tuple.Create("Rohr, Don", 101.0, 3.74, 110) };
Console.WriteLine("The values in unsorted order:");
foreach (var pitcher in pitchers)
Console.WriteLine(pitcher.ToString());
Console.WriteLine();
Array.Sort(pitchers, new PitcherComparer<string, double, double, int>());
Console.WriteLine("The values sorted by earned run average (component 3):");
foreach (var pitcher in pitchers)
Console.WriteLine(pitcher.ToString());
}
}
输出:
The values in unsorted order: (McHale, Joe, 240.1, 3.6, 221) (Paul, Dave, 233.1, 3.24, 231) (Williams, Mike, 193.2, 4, 183) (Blair, Jack, 168.1, 3.48, 146) (Henry, Walt, 140.1, 1.92, 96) (Lee, Adam, 137.2, 2.94, 109) (Rohr, Don, 101, 3.74, 110) The values sorted by earned run average (component 3): (Henry, Walt, 140.1, 1.92, 96) (Lee, Adam, 137.2, 2.94, 109) (Rohr, Don, 101, 3.74, 110) (Blair, Jack, 168.1, 3.48, 146) (McHale, Joe, 240.1, 3.6, 221) (Paul, Dave, 233.1, 3.24, 231) (Williams, Mike, 193.2, 4, 183)