More Effective C# 第21条、第22条 实例代码解析(可比较 可排序 自定义对象集合完整演示) IEquatable, IComparable,IEnumerable

本文通过实现Person类的比较逻辑,展示了如何正确地重载C#中的操作符和实现接口成员,包括IEquatable<T>和IComparable<T>,并演示了如何使用yield return进行枚举。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   More Effective C# 第21条为:“让重载方法尽可能清晰,最小化且完整”,第22条为:“定义方法后再重载操作符”。

   具体文字我就不多描述了,“翠花,上代码”:

    person类:

  

   PersonCollection类:

  

 

   测试代码:

  

      简单说明一点,yield return语句,C#2.0之后添加的的该语句,用来支持以序列的方式返回对象集合,该语句不但返回一个值,而且还保留了内部迭代中的当前位置及当前状态。以前不咋重视该语句,可看了More Effective C#感觉这个语句真的很优秀。比如可以减少一层循环遍数。

   整理了一下,感觉思路清楚了好多呀,以后看书还是要多敲代码测试的,呵呵。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值