用泛型实现参数化类型(泛型的深化与提高)

来源:互联网 发布:淘宝如何免费引流 编辑:程序博客网 时间:2024/04/28 06:59

1以泛型方式将一个给定的值和默认值进行比较
static int CompareToBefault(T value) where t :ICompare
{
reurn value.CompareTo(default(T))
}
console.write(CompareToBefault(“x”))//字符串默认是null,任何字符串都比null大,所以返回的是1
console.write(CompareToBefault(10))//int类型默认值是0,所以返回1

 2泛型比较接口   共有4个主要的泛型接口可用于比较.IComparer<T>和IComparable<T>用于排序(判断某个知识小于  等于  还是大于另一个值),而IRqualityComparer<T>和IEquatable<T>通过某种标准来比较两个项的想等性,或查找某个项的散列(通过与相等性概念匹配的方式)   如果换一种方式划分4个接口,IComparer<T>和IequalityComparer<T>用于那些能够比较两个不同值的类型,而IComparable<T>和IEquatable<T>的实例则用于他们本身和其他值之间的比较

代码清单3-6表示一对值的泛型类
public sealed class Pair

0 0
原创粉丝点击