当前位置:首页 > C#学习 > 正文内容

索引器

小道7年前 (2018-08-21)C#学习4856

C#中提供了按照索引器进行访问的方法

定义索引器的方式:

string this[int index]

{get { return ""; }set { }}

,string为索引器的类型,[]中是参数列表。进行索引器写操作就是调用set代码块,在set内部使用value得到用户设置的值;进行读操作就执行get代码块。

索引器参数可以不止一个,类型也不限于int,几乎可以是任意类型。

namespace 索引
{
    class Program
    {
        static void Main(string[] args)
        {
            Person p = new Person();
            p[1] = "一洋";//给索引器1赋值
            Console.WriteLine("输出p[1]值:{0},p[2]值:{1}", p[1],p[2]);//输出结果
            Console.ReadKey();//按任意键退出
        }
    }
    class Person //定义一个类
    {
        private string FirstName = "大洋";//定义一个 局部变量
        private string SecondName = "小洋";//定义一个 局部变量
        public string this[int index]//定义一个索引器,int index是接收的索引整型值。string是接收和返回的值的类型。
        {
            set//设置
            {
                if (index == 1)//判断接收的值是否等于1
                {
                    FirstName = value;//如果等于,则将传递过来的值赋值给FirstName变量。value代表传递过来的值。
                }
                else if (index == 2)//判断接收的值是否等于2
                {
                    SecondName = value;//如果等于,则将传递过来的值赋值给FirstName变量。value代表传递过来的值。
                }
                else
                {
                    Console.WriteLine("错误的序号");//提示错误
                }
            }
            get//返回
            {
                if (index == 1)//判断接收的值是否等于1
                {
                    return FirstName;//如果等于,则返回
                }
                else if (index == 2)//判断接收的值是否等于2
                {
                    return SecondName;//如果等于,则返回
                }
                else
                {
                    return "错误的序号";//提示错误
                }
            }
        }
    }
}

输出结果:

image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://www.daobk.com/post/45.html

分享给朋友:

“索引器” 的相关文章

枚举enum

枚举enum

确定数量、确定值的几个取值:东西南北、男女、上中下。和用字符串比起来,用枚举的好处就是限定了变量的取值范围,程序处理起来更方便。namespace 枚举//命名空间 {     enum xb { 男, 女...

数组:​从一个整数数组中取出最大的整数。

数组:​从一个整数数组中取出最大的整数。

保存多个值。任意类型都可以声明数组。int[] nums = {5,3,8};//数组可以直接赋值。 int[] nums = new int[3];//也可以先声明数组 不赋值。   &...

数组:将一个字符串数组输出为|分割的形式

数组:将一个字符串数组输出为|分割的形式

数组:将一个字符串数组输出为|分割的形式,比如“王钢蛋|李铁蛋|铁锤”            string[] s = { "王钢...

foreach语句:依次读取数组中的元素。

foreach语句:依次读取数组中的元素。

foreach和for的区别:for可以不逐个遍历,比如每隔一个遍历一个,或者可以从后向前遍历。只能(只应该)在foreach对集合进行读,而不应该写。foreach语句:依次读取数组中的元素。         ...