码迷,mamicode.com
首页 > Windows程序 > 详细

C# 类中索引器的使用二

时间:2015-10-28 19:07:29      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:

索引器(Indexer)是C#引入的一个新型的类成员,它使得类中的对象可以像数组那样方便、直观的被引用。索引器非常类似于属性,但索引器可以有参数列表,且只能作用在实例对象上,而不能在类上直接作用。定义了索引器的类可以让您像访问数组一样的使用 [ ] 运算符访问类的成员。(当然高级的应用还有很多,比如说可以把数组通过索引器映射出去等等)

      本文只是简单演示一下索引器的概念和基本的使用方法:

请看代码,下面是类的定义,中间包含了一个索引器定义

类的定义
    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 字段值

 

C# 类中索引器的使用二

标签:

原文地址:http://www.cnblogs.com/genesis/p/4917992.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!