• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
i好吧
博客园    首页    新随笔    联系   管理    订阅  订阅
索引器的使用

索引器的使用

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

解决方案:
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());//通过姓名访问

http://ihaoba.taobao.com/
posted on 2010-05-10 09:45  calmness  阅读(257)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3