C#索引器(Indexer)

索引器(Indexer)允许一个对象可以像数组一样使用下标的方式来访问.

当为类定义一个索引器时,该类的行为就会像一个虚拟数组(virtual array) 一样.可以使用数组访问运算符\[\]来访问该类的成员.

语法

一维索引器的语法如下:

element-type thisint index

{

// get 访问器

get

{

// 返回 index 指定的值

}

// set 访问器

set

{

// 设置 index 指定的值

}

}

索引器(Indexer)的用途

索引器的行为的声明在某种程度上类似于属性(Property).就像属性(property),可以使用get和set访问器来定义索引器.但是,属性返回或设置一个特定的数据成员,而索引器返回或设置对象实例的一个特定值.换句话说,它把实例数据分为更小的部分,并索引每个部分,获取或设置每个部分.

定义一个属性(property)包括提供属性名称,索引器定义的时候不带有名称,但带有this关键字,它指向对象定义.

实例演示:

重载索引器(Indexer)

索引器(Indexer)可被重载.索引器声明的时候也可带有多个参数,且每个参数可以是不同的类型.没有必要让索引器碧玺是整形的,C#允许索引器可以是其他类型,例如:字符串类型.

下面的实例演示了重载索引器:

相关推荐
yuannl101 小时前
图的深度优先遍历DFS
数据结构
青山木4 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先
不会就选b4 小时前
算法日常・每日刷题--<归并排序>1
数据结构·算法
危桥带雨4 小时前
排序算法(快排、归并、计数、基数排序)
数据结构·算法·排序算法
zephyr055 小时前
数据结构-并查集
数据结构
稚南城才子,乌衣巷风流6 小时前
动态树(Dynamic Tree)数据结构详解
数据结构·算法
zander2586 小时前
114. 二叉树展开为链表
数据结构·链表·深度优先
小肝一下7 小时前
3. 单链表
c语言·数据结构·c++·算法·leetcode·链表·dijkstra
tachibana27 小时前
hot100 前 K 个高频元素(347)
java·数据结构·算法·leetcode
延凡科技21 小时前
多场景落地复盘:端边云架构无人机智能巡检系统设计与实践
大数据·数据结构·人工智能·科技·架构·无人机·能源