C#实例:索引器实现水果名称关联数据
41 浏览量
更新于2024-08-29
收藏 25KB PDF 举报
在C#编程中,索引器(Indexers)是一种特殊类型的成员,它允许我们像操作数组一样通过名称来访问和修改对象的特定属性或集合元素。在这个简单的实例中,我们看到一个名为`Fruit`的类,该类使用了索引器来存储和操作几种水果的信息,如桃子(peach)、橙子(orange)、香蕉(banana)和苹果(apple)。
首先,`Fruit`类定义了一个名为`this[string fruitName]`的索引器。这个索引器有两个部分:getter和setter。getter用于获取指定水果名称对应的值,而setter则用于设置该名称的值。当调用`f[“peach”]`或`f[“orange”]`时,实际上是在调用这个索引器。
在getter部分,通过`switch`语句根据传入的`fruitName`参数查找对应的字符串值。如果输入的`fruitName`匹配任一已定义的水果名称("peach", "orange", "banana", "apple"),则返回相应的属性值;否则,抛出一个异常,提示"wrongfruitname"。
在setter部分,同样使用`switch`语句根据`fruitName`更新对应的属性值。这里值得注意的是,尽管我们只展示了四种水果,但实际上,你可以扩展这个索引器来添加更多水果。
在`Program`类的`Main`方法中,首先创建了一个`Fruit`对象`f`。然后,我们通过索引器访问和修改`peach`的值。第一行`Console.WriteLine(f[“peach”])`调用getter方法,打印出桃子的默认描述。接着,`f[“peach”]=“Iliketoeatpeach.”`通过setter方法将桃子的描述改为新的字符串。最后再次调用`Console.WriteLine(f[“peach”])`验证设置是否成功。
这个C#索引器实例展示了如何为自定义类实现类似数组的动态访问,提供了灵活性,使得用户可以方便地通过名称而非硬编码的索引来访问和修改类的私有数据。这对于处理动态数据、配置对象或构建可扩展的接口非常有用。
2011-08-04 上传
2007-08-21 上传
2024-09-07 上传
2008-10-29 上传
2010-12-22 上传
2011-02-05 上传
2008-12-26 上传
2008-02-27 上传
2020-09-04 上传
weixin_38655810
- 粉丝: 6
- 资源: 907
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章