C# 索引器
2018-01-16 03:30 更新
C# 索引器
索引器提供了一个类似数组的语法来访问类或结构中的元素。
索引器与属性类似,但可通过索引参数访问,而不是属性名称。
字符串类有一个索引器,它允许您通过int索引访问其每个char值:
string s = "hello";
Console.WriteLine (s[0]); // "h"
Console.WriteLine (s[3]); // "l"
使用索引器的语法与使用数组的语法相似,除了index参数可以是任何类型。
索引器具有与属性相同的修饰符。
实现索引器
要编写索引器,请定义一个名为this的属性,在方括号中指定参数。
例如:
class MyWord {
string[] words = "this is a test".Split();
public string this [int wordNum] // indexer
{
get {
return words [wordNum];
}
set {
words [wordNum] = value;
}
}
}
以下是我们如何使用此索引器:
MyWord s = new MyWord();
Console.WriteLine (s[3]);
s[3] = "CSS";
Console.WriteLine (s[3]); // CSS
类型可以声明多个索引器,每个索引器具有不同类型的参数。
索引器也可以采用多个参数:
public string this [int arg1, string arg2] {
get { ... } set { ... }
}
如果省略set存取器,索引器将变为只读。
以上内容是否对您有帮助:
← C# 属性
更多建议: