阅读量:7
C#索引器是一种特殊的属性,允许通过索引访问类或结构中的元素。通过定义索引器,可以将类或结构的实例看作是一个数组或集合,可以使用索引访问其中的元素。
索引器的定义包括以下几个部分:
访问修饰符:指定索引器的访问级别,如public、private等。
返回类型:指定索引器返回的元素类型。
this关键字:用于表示当前类或结构的实例。
索引参数:指定用于访问元素的索引类型和名称。
get访问器:用于获取索引器中指定索引位置的元素的值。
set访问器:用于设置索引器中指定索引位置的元素的值。
以下是一个示例代码,演示了如何定义一个索引器:
public class MyCollection { private string[] elements = new string[5]; public string this[int index] { get { return elements[index]; } set { elements[index] = value; } } }
在上面的示例中,MyCollection类定义了一个名为elements的私有字符串数组,并通过索引器this[int index]来访问其中的元素。通过get访问器可以获取指定索引位置的元素值,而通过set访问器可以设置指定索引位置的元素值。
使用索引器时,可以像访问数组一样使用方括号[]来访问元素。例如:
MyCollection collection = new MyCollection(); collection[0] = "Hello"; string value = collection[0]; Console.WriteLine(value); // 输出:Hello
上面的代码通过索引器将"Hello"赋值给了集合的第一个元素,然后通过索引器获取并输出了该元素的值。