如何使用 IComparable 和 IComparer 接口在 Visual C#中
答案:2 悬赏:30 手机版
解决时间 2021-01-30 04:58
- 提问者网友:十年饮冰
- 2021-01-29 08:21
如何使用 IComparable 和 IComparer 接口在 Visual C#中
最佳答案
- 五星知识达人网友:举杯邀酒敬孤独
- 2021-01-29 08:54
本分步指南描述如何使用两个接口: IComparer和IComparable。这些接口在同一篇文章中讨论以下两个原因。尽管这两个接口很相似(有着相似的名字),也常常被一起使用,但是它们各自的作用却不同。
如果您已经有一个支持IComparer的类型 (如字符串或整数) 的数组,你可以对这个数组进行排序而不提供任何显式引用到IComparer。在这种情况下,数组中的元素强制转换为IComparer (Comparer.Default) 为您的默认实现。但是,如果您想要为您自定义的对象提供排序或比较功能,则必须实现一个或这两种接口。
https://support.microsoft.com/zh-cn/kb/320727
如果您已经有一个支持IComparer的类型 (如字符串或整数) 的数组,你可以对这个数组进行排序而不提供任何显式引用到IComparer。在这种情况下,数组中的元素强制转换为IComparer (Comparer.Default) 为您的默认实现。但是,如果您想要为您自定义的对象提供排序或比较功能,则必须实现一个或这两种接口。
https://support.microsoft.com/zh-cn/kb/320727
全部回答
- 1楼网友:旧脸谱
- 2021-01-29 09:26
尽管这两个接口很相似(有着相似的名字),也常常被一起使用,但是它们各自的作用却不同。 如果您已经有一个支持icomparer的类型 (如字符串或整数) 的数组,你可以对这个数组进行排序而不提供任何显式引用到icomparer。在这种情况下,数组中的元素强制转换为icomparer (comparer.default) 为您的默认实现。 但是,如果您想要为您自定义的对象提供排序或比较功能,则必须实现一个或这两种接口。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯