C#C#中的索引器原理

我们只知道索引器给大家缓解了累累题材,带来了重重便利,但你明白它的法则所在吗?

01.创设三个Test类,里面定义多少个数组和二个索引器

 

爱人们,还记得我们在C#语言开发中用到过索引器吗?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 索引器
{
    class Program
    {
        static void Main(string[] args)
        {
            //01.首先你得实例化Test类的对象
            Test test=new Test();
            //02.利用索引器给Test类中的数组赋值
            test[0] = "张总";
            test[1] = "吴总";
            //03.打印查看效果
            for (int i = 0; i < 2; i++)
            {
                Console.WriteLine(test[i]);
            }
            Console.ReadLine();
        }
    }
}

 

回忆在赢得DataGridView控件的某列值时:dgvlist.SelectedRows[0].Cells[0].Value;

回忆在收获ListView控件的某列值时:listView1.SelectedItems[0].SubItems[0].Text;

02.在Main方法中通过索引器给Test类中的数组赋值

C# 1

那就是索引器

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 索引器
{
   public class Test
    {
       //01.首先定义一个数组
       private string[] name=new string[2];

       //02.根据创建索引器的语法定义一个索引器,给name数组赋值和取值
       public string this[int index]
       {
           get { return name[index]; }
           set { name[index] = value; }
       }

    }
}

  [修饰符] 数据类型 this[索引类型 index]

 

    set{ //设置属性的代码}

  02.定义索引器的章程与概念属性有个别看似,其相似方式如下:

如此正是索引器的利用

  01.C#中的类成员能够是私行档次,包含数组和集合。当2个类富含了数组和聚合成员时,索引器将大大简化对数组或集合成员的存取操作。

    get{//获得属性的代码}
                                             

 

下边说到 

  {

记得在读取数据库记录给变量赋值时:result=dr[“StudentName”].ToString();

03.索引器的本质是性质

C# 2

记得Dictionary中依据key值来赢得Value值时:dic[“key”]等等

 

下边我们以一个事例来精通索引器的用法和规律:

  }

索引器的实质是性质

03.职能如下:

正确,大家可以发现上边定义索引器的代码的IL(中间语言)是(属性的格式):

相关文章