索引器的使用

需求:在班级类中用学员类数组保存学员,若想访问该数组需要用索引,这样我们必须非常清楚数组中元素的索引,使用起来不方便,因为我们很容易记住学员的名字,所以想通过学员名字访问该数组。于是:

解决方案:
1.将原来班级类中的数组属性Student[]改为Students对象;
2.添加一个Students类并加入索引器,然后将它的访问方式重载,使用姓名进行访问(注意:此时班级类中已经没有了学员类型的数组,所以要在Students类中定义学员类型的数组作为属性)

索引器代码如下:

public Student this[int index]
        {
            get { return stu[index]; }
        }

        public Student this[string name]
        {
            get
            {
                for (int i = 0; i < stu.Length; i++)
                {
                    if (stu[i].Name.ToString() == name)
                    {
                        return stu[i];
                    }
                }
                return null;
            }
        }

然后在访问的时候就可以通过学员姓名访问:

MyClass myClass=new MyClass("t001");//创建一个班级对象
Console.WriteLine(myClass.Students[2].Name.ToString());//通过索引访问
Console.WriteLine(myClass.Students["Jay"].Name.ToString());//通过姓名访问

相关文章:

  • 2021-08-25
  • 2021-07-20
  • 2022-12-23
  • 2021-06-28
  • 2021-06-08
猜你喜欢
  • 2021-07-18
  • 2021-11-17
  • 2021-07-05
  • 2021-06-29
  • 2022-12-23
  • 2021-12-14
相关资源
相似解决方案