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

索引器

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

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://daobk.com/post/45.html

分享给朋友:

“索引器” 的相关文章

while语句:用 while continue实现计算1到100之间的除了能被7整除之外所有整数的和。

while语句:用 while continue实现计算1到100之间的除了能被7整除之外所有整数的和。

while语句:用 while continue实现计算1到100之间的除了能被7整除之外所有整数的和。            int i = 1;/...

枚举enum

枚举enum

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

字符串的处理

字符串的处理

C#中单个字符用单引号包含就是char类型,('a'),单引号中放且只能放一个字符。单个字符也可以表示为字符串,还可以有长度为0的字符串使用s.Length属性来获得字符串中的字符个数string可以看做是char的只读数组。char c = s[1];。C#中字符串有一个重要的特性...

函数的ref、out参数

函数的ref、out参数

函数参数默认是值传递的,也就是“复制一份”ref必须先初始化,因为是引用,所以必须先“有”,才能引用,而out则是内部为外部赋值,所以不需要初始化,而且外部初始化也没用。ref应用场景内部对外部的值进行改变,out则是内部为外部变量赋值,out一般用在函数有多个返回值的场所。  ...