请看代码,下面是类的定义,中间包含了一个索引器定义
类的定义
public class Person { // 定义两个字段信息 private string name; private string password; // 定义一个 Name 属性来操作 name 字段 public string Name { set { name = value; } get { return name; } } // 定义一个 Password 属性来操作 password 字段 public string Password { set { password = value; } get { return password; } } // 定义索引器,name 字段的索引值为 0 ,password 字段的索引值为 1 public string this[ int index] { get { if (index == 0) return name; else if (index == 1) return password; else return null; } set { if (index == 0) name = value; else if (index == 1) password = value; } } }
下面是使用索引器的方法:
protected void Page_Load( object sender, EventArgs e) { // 声明并实例化这个类 Person p = new Person(); // 使用索引器的方式来给类的两个属性赋值 p[ 0] = " jarod "; p[ 1] = " 123456,./ "; // 使用类属性取得两个字段信息 Label1.Text = p.Name + " / " + p.Password; }
非常简单,在上面的类中我们把类的 name 字段映射的索引值为 0,而 password 字段映射的索引值为 1。有了这个映射就可以使用以下方式为类的 name 和 password 赋值了。
p[ 0 ] = " jarod " ; // 设置 name 字段值 p[ 1 ] = " 123456,./ " ; // 设置 password 字段值
赋值后,就可以使用属性方法访问到刚刚给两个字段赋的值了。