索引器允许类和结构的实例按照与数组相同的方式进行索引,索引器类似与属性,不同之处在于他们的访问器采用参数。被称为有参属性。 简单的索引器实例:
class Program { static void Main(string[] args) { IndexClass a = new IndexClass(); a[0] = "张三"; a[1] = "李四"; a[2] = "王五"; Console.WriteLine("a[0]=" a[0]); Console.WriteLine("a[1]=" a[1]); Console.WriteLine("a[2]=" a[2]); Console.ReadKey(); } } class IndexClass { private string[] name = new string[10]; public string this[int index] { get { return name[index]; } set { this.name[index] = value; } } }
索引器与数组的比较:
索引器的索引值不受类型限制。用来访问数组的索引值一定是整数,而索引器可以是其他类型的索引值。
索引器允许重载,一个类可以有多个索引器。
索引器不是一个变量没有直接对应的数据存储地方。索引器有get和set访问器。
|