C#索引器

第一次听也

好神奇的说 我还是太菜啦呜呜呜 Java也有哦

封装📦--索引器

class Person
{
  private Person[] friends; //定义一个对象数组
  
  public Person this[int index] //一个索引器
  {
       get
       {
          return friends[index];
       }
    		set
        {
          friends[index] = value;
        }
  }
  
}

class Program
{
  static void Main(string[] args)
  {
    Person p = new Person();
    p[0] = new Person();  //通过索引器,让对象可以像数组一样通过索引访问其中元素
  }
}

索引器重载

class Person//跟上面是一个类 为了清晰分开写
{
  private int[,] array;
  
  public int this[int i,int j]//索引器重载
  {
    	get
      {
        return array[i,j];
      }
    	set
      {
        array[i,j] = value;
      }
  }
}

总结:

  • 索引器对于我们的主要作用:让我们以中括号的形式访问自定义类中的元素 访问时和数组一样

  • 适用于在类中有数组变量时使用 可以方便的访问和进行逻辑处理

  • 固定写法 : 访问修饰符 返回值 this [ 参数列表 ] + get与set语句块

  • 可以重载 里面可以写逻辑

  • ps:结构体里也支持索引器

posted on 2022-05-22 23:39  AcherLoveCode  阅读(36)  评论(0编辑  收藏  举报

导航