为什么存在泛型和非泛型iccomparable接口?

本文关键字:泛型 接口 iccomparable 存在 为什么 | 更新日期: 2023-09-27 18:19:12

也许这个问题听起来很傻,但是为什么会存在通用和非通用的IComparable接口呢?

此外,哪一个更喜欢使用,为什么?

为什么存在泛型和非泛型iccomparable接口?

非泛型的IComparable是在1.1版本引入泛型之前添加的,而IComparer<T>是在2.0版本与泛型一起添加的。

与所有泛型接口一样,首选泛型版本——它更安全,并且更清楚地记录意图。当传递给泛型方法时,结构类型也不需要装箱,因为它们将用于具有object参数(如IComparable.CompareTo)的方法,因此也有性能优势。