C#中的索引器

发布时间:2026/9/28 12:38:28

C#中的索引器
索引器是一类共对象在外部以一种更便捷的方式访问或修改类内变量的方法例如依据索引访问类内集合性质的元素以及其他更加自由的操作。在语法上综合了函数与成员属性的写法。允许重载。其内部的get/set规则也与成员属性类似。namespace ConsoleApp5 { class Person { public Person() { array new int[10, 10]; // 或根据需要设定维度 } private string name; private int age; private Person[] friends; private int[,] array; //利用索引器访问二维数组 public int this[int i, int j] { get { return array[i, j]; } set { array[i, j] value; } } //利用索引器传入的字符串返回对应的成员变量 private string this[string str] { get { switch (str) { case name: return this.name; break; case age: return this.age.ToString(); default: return ; } } } //利用索引器访问一维数组允许添加额外逻辑 public Person this[int index] { get { if (friends null || friends.Length - 1 index) { return null; } else { return friends[index]; } } set { if (friends null) { friends new Person[] { value }; } else if (friends.Length - 1 index) { friends[friends.Length - 1] value; } else { friends[index] value; } } } } class Program { static void Main(string[] args) { Person p new Person(); p[0] new Person(); Console.WriteLine(p[0]); p[0, 0] 10; } } }

相关新闻

CentOS自建yum仓库实战指南与优化技巧

CentOS自建yum仓库实战指南与优化技巧

2026/9/26 16:05:33

1. CentOS自建yum仓库核心价值解析 在企业级Linux运维中,yum仓库如同一个精心管理的"软件超市"。我经历过多次因官方源网络延迟导致的部署失败,特别是在批量部署Ceph分布式存储或PostgreSQL-TimescaleDB组合时,自建仓库的价值就凸显…

学术论文大白话解读工具横评:5款“学术翻译“方案实测对比与选型指南

学术论文大白话解读工具横评:5款“学术翻译“方案实测对比与选型指南

2026/8/23 0:02:22

文章目录📊 先看实测:同一段原文,5款方案分别怎么说?📊 5款大白话解读方案多维度对比🔬 靠岸学术Scholaread大白话解读三步走🛠 其他4款方案各有所长❓ 你可能关心的几个问题🎯 根据…

鲁班猫板:大学生编程入门与硬件开发实战指南

鲁班猫板:大学生编程入门与硬件开发实战指南

2026/9/9 17:42:27

1. 为什么大学生需要鲁班猫板入门编程第一次接触编程的大学生往往面临一个尴尬的困境:学校教的C语言还在写黑框程序,而网上炫酷的智能小车、人脸识别项目又不知从何入手。传统学习路径存在几个断层:语法学习与实际硬件脱节:在VC6.…

CANN/GE ACL数据集缓冲区添加函数

CANN/GE ACL数据集缓冲区添加函数

2026/9/28 4:08:17

aclmdlAddDatasetBuffer 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Te…

用ffmpeg高效批量调整图片尺寸的实战指南

用ffmpeg高效批量调整图片尺寸的实战指南

2026/9/27 1:30:29

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

2026/9/28 2:15:29

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 【免费下载链接】transformers 🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and mu…

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

2026/9/28 3:14:54

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system sup…

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

2026/9/28 3:58:00

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

2026/9/28 3:47:14

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting mi…

远程协作的工作台整理

远程协作的工作台整理

2026/9/26 14:29:04

远程协作的工作台整理远程协作的核心不是再加一个工具,而是让交接信息足够完整。异步任务要写明目标、输入位置、完成标准和需要决策的人。 工作台的最小配置 将日程、待办、代码和沟通入口收拢到少数固定位置;通知按紧急程度分层。工作台不需要模仿办公…

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

2026/9/28 5:05:21

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

2026/9/26 23:35:16

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…