#unity/日常积累 ``` cs IComparable 接口 ``` - 参考 反馈 [](https://learn.microsoft.com/zh-cn/dotnet/api/system.icomparable-1?view=net-8.0#definition) ## 定义 命名空间: [System](https://learn.microsoft.com/zh-cn/dotnet/api/system?view=net-8.0) 程序集: System.Runtime.dll 定义由值类型或类实现的通用比较方法,旨在创建特定于类型的比较方法以对实例进行排序。 ``` cs public interface IComparable ``` #### 类型参数 T 要比较的对象的类型。 这是逆变类型参数。 即,可以使用指定的类型,也可以使用派生程度较低的任何类型。 有关协变和逆变的详细信息,请参阅[泛型中的协变和逆变](https://learn.microsoft.com/en-us/dotnet/standard/generics/covariance-and-contravariance)。 派生 [System.Boolean](https://learn.microsoft.com/zh-cn/dotnet/api/system.boolean?view=net-8.0) [System.Byte](https://learn.microsoft.com/zh-cn/dotnet/api/system.byte?view=net-8.0) [System.Char](https://learn.microsoft.com/zh-cn/dotnet/api/system.char?view=net-8.0) [System.DateOnly](https://learn.microsoft.com/zh-cn/dotnet/api/system.dateonly?view=net-8.0) [System.DateTime](https://learn.microsoft.com/zh-cn/dotnet/api/system.datetime?view=net-8.0) [更多…](https://learn.microsoft.com/zh-cn/dotnet/api/system.icomparable-1?view=net-8.0# "显示所有派生类") [](https://learn.microsoft.com/zh-cn/dotnet/api/system.icomparable-1?view=net-8.0#examples) ## 示例 以下示例演示了简单 `Temperature` 对象的 实现[IComparable](https://learn.microsoft.com/zh-cn/dotnet/api/system.icomparable-1?view=net-8.0)。 该示例使用对象键创建字符串 [SortedList](https://learn.microsoft.com/zh-cn/dotnet/api/system.collections.generic.sortedlist-2?view=net-8.0) 集合 `Temperature` ,并按顺序向列表中添加几对温度和字符串。 在调用 [Add](https://learn.microsoft.com/zh-cn/dotnet/api/system.collections.generic.sortedlist-2.add?view=net-8.0) 方法时, [SortedList](https://learn.microsoft.com/zh-cn/dotnet/api/system.collections.generic.sortedlist-2?view=net-8.0) 集合使用 [IComparable](https://learn.microsoft.com/zh-cn/dotnet/api/system.icomparable-1?view=net-8.0) 实现对列表条目进行排序,然后按温度上升的顺序显示这些条目。