对于比较器,是否存在变量类型(类似int
,bool
或==
)? (!=
,<=
,>=
,>
,<
,int integerVariable = 0;
)如果没有,C#如何使用它们?
我可以用
comp comparatorVariable = ==;
但是我可以用来做什么
Include
答案 0 :(得分:5)
您列出的各种运营商没有型号。对象有类型。您列出的运算符本身不是对象,因此没有类型。如果您对C#语言如何使用运算符感兴趣,可以查看语言规范; C#5.0规范的第7.3节标题为&#34;运营商&#34;并且填充了有关C#如何处理运算符的信息。
答案 1 :(得分:-1)
C#提供了一个名为IComparable<T>
的通用接口。
此界面只有一个方法:int CompareTo<T>
public interface IComparable<in T>
{
int CompareTo(T other);
}
要实现比较运算符(==,!=,&lt; =,&gt; =,&gt;,&lt;),您需要在继承IComparable
的类上实现这些运算符。
日期时间“==”运算符可能如下所示。
public static bool operator ==(DateTime d1, DateTime d2)
{
return d1.CompareTo(d2) == 0;
}