比较器有变量类型吗?

Is there a variable type for comparators?

是否有用于比较器的变量类型(类似于 stringintbool)? (==, !=, <=, >=, >, <)如果不是,C#如何使用它们?

我可以用

int integerVariable = 0;

但是有什么我可以用来做的事情

comp comparatorVariable = ==;

?

您列出的各种运算符没有类型号。 Objects 有类型。您列出了运算符,它们本身不是 objects,因此没有类型。如果您对 C# 语言如何使用运算符感兴趣,可以查看语言规范; C# 5.0 规范的第 7.3 节标题为 "Operators",其中包含有关 C# 如何处理运算符的信息。

C# 提供了一个名为 IComparable<T> 的通用接口。

这个接口只有一个方法:int CompareTo<T>

public interface IComparable<in T>
    {
        int CompareTo(T other);
    }

要实现比较运算符(==、!=、<=、>=、>、<),需要在继承IComparable的class上实现这些运算符。

日期时间“==”运算符可能如下所示。

public static bool operator ==(DateTime d1, DateTime d2)
{
    return d1.CompareTo(d2) == 0;
}