索引器

系统 1572 0

//类

class Student
    {
        public int StuNo { get; set; }
        public string StuName { get; set; }
        public int StuAge { get; set; }
    }

//索引器

 class MyClass
    {
        //存储5个学员信息的数组
        public Student[] students = new Student[5];

        public MyClass()
        {
            students[0] = new Student() { StuNo = 1001, StuName = "张三", StuAge = 23 };
            students[1] = new Student() { StuNo = 1002, StuName = "李四", StuAge = 24 };
            students[2] = new Student() { StuNo = 1003, StuName = "王五", StuAge = 25 };
            students[3] = new Student() { StuNo = 1004, StuName = "赵六", StuAge = 26 };
            students[4] = new Student() { StuNo = 1005, StuName = "小七", StuAge = 27 };
        }

        /// <summary>
        /// 学号索引器
        /// </summary>
        /// <param name="stuNo"></param>
        /// <returns></returns>
        public Student this[int stuNo]
        {
            get
            {
                foreach (Student item in students)
                {
                    if (item.StuNo == stuNo)
                    {
                        return item;
                    }
                }
                return null;
            }
        }

        /// <summary>
        /// 姓名索引器
        /// </summary>
        /// <param name="stuName"></param>
        /// <returns></returns>
        public Student this[string stuName]
        {
            get
            {
                foreach (var item in students)
                {
                    if(item.StuName == stuName)
                    {
                        return item;
                    }
                }
                return null;
            }
        }
    }

//使用

class Program
    {
        static void Main(string[] args)
        {
            MyClass myClass = new MyClass();

            Student stu = myClass[1002];
            Console.WriteLine("学号:" + stu.StuNo + " 姓名:" + stu.StuName + " 年龄:" + stu.StuAge);

            Student stu2 = myClass["小七"];
            Console.WriteLine("学号:" + stu2.StuNo + " 姓名:" + stu2.StuName + " 年龄:" + stu2.StuAge);
        }
    }

索引器


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论