索引器的使用

1.基本概念:

让对象可以像数组一样通过索引访问其中元素,使程序看起来更直观,更容易缩写

2.基本语法:

访问修饰符     返回值    this[参数类型   参数名,参数类型    参数名]{

get{     可以写逻辑,根据需求来处理这里面内容     }

set{       可以写逻辑,根据需求来处理这里面内容   }

}

class Person
        {
          private string name;
            private int age;
            private Person[] friends;
            //索引器写法
            public Person this[int index]
            {
                get {
                    //可以写逻辑,根据需求来处理这里面内容
                    if(friends ==null ||friends .Length - 1 < index)
                    {
                        return null; 
                    }
                    return friends[index];

                }
                set {
                 //   可以写逻辑,根据需求来处理这里面内容
                 if (friends ==null)
                    {
                        friends = new Person[] { value };
                    }
                 else if (index >friends .Length - 1)
                    {
                        //自己定义了一个规则,如果索引越界,就默认把最后一个朋友顶掉
                        friends[friends.Length - 1] = value;
                    }
                    friends[index] = value;
                
                }
            }

        }
        static void Main(string[] args)
        {
            //索引器的使用
            Person p = new Person();
            p[0] = new Person();
            Console.WriteLine(p[0]);
        }
    }
}
 

3.索引器可以重载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值