索引器(indexer)demo

1.索引器允许类或者结构的实例按照与数组相同的方式进行索引。
索引器类似于属性,不同之处在于他们的访问采用参数。

2.索引器必须以this关键字定义,这个this代表类实例化后的对象,如下定义一个类的索引器实例:
    public class IDXer
    {
                private string[] name;
                public string this[int index]
                {
                            get 
                            {
                                return name[index];
                            }
                            set
                            {
                                name[index] = value;
                            }
                }  
    }
     
3.索引器的使用:
Main方法中,实例化类的对象后,对象加索引,类似于数组元素,变量值赋值给带索引的类的对象.
赋值数据类型,取决于定义类的索引器时,索引器set,get的变量类型.
    public class Program
    {
        static void Main(string[] args)
        {
            //最简单索引器的使用           
            IDXer indexer = new IDXer();
            //对索引器赋值,调用索引器的set方法
            indexer[0] = "张三";
            indexer[1] = "李四";
            //输出索引器的值,调用索引器的get方法
            Console.WriteLine(indexer[0]);
            Console.WriteLine(indexer[1]);
            Console.ReadKey();
        }
    }
索引器可以将类的对象像数组一样被使用,通过索引器的下标,可以将不同变量赋值给类的实例对象p.
如index=0;将name传给p[0]
如index=1;将账号传给p[1]
如index=2;将密码传给p[2]

索引器的下标可以是int,也可以其他数据类型,比如string,按照实际开发需求来定义下标index的数据类型.并不一定是整型,这点和数组索引不同.
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值