美文网首页
01-- (2019-10-09)-- 来 了解一下索引器

01-- (2019-10-09)-- 来 了解一下索引器

作者: 为体验更多 | 来源:发表于2019-10-09 15:31 被阅读0次

1.什么是索引器?

  索引器是c#语言中的一种类成员,它可以让对象像数组一样被索引获取。

例如:

string obj = "Abc";
Console.WriteLine(obj[0]); //结果为A

2.一个小Demo说明索引基本用法。

   我们需要有这么一个类,该类有一个int类型的数组成员变量名为arr;我们知道int类型成员变量我们实例对象需要通过属性的访问器get set 来访问,那么我们数组成员变量访问方式就是该属性的索引器(其实本质也是get set方法)。

using System;

class Sample
{
   //数组成员变量
   private int[] arr = new int[3];
public Sample()
{
    arr[0]=100;
}

  //定义数组成员变量索引,类实例对象通过索引访问数组成员变量。
   public int this[int i]
   {
      get { return arr[i]; }
      set { arr[i] = value; }
   }
}

class Program
{
   static void Main()
   {
      var values = new Sample();
      values[1] = "200";
      Console.WriteLine(values[0]);//结果为 100
     Console.WriteLine(values[1]);//结果为200
   }
}

3.索引器定义

   索引器定义方式和属性访问器类似


public 类型 this[类型 参数名称]
{
 get{}//get方法具体实现
 set{} //set方法具体实现
}


例如:
class 对一个Hashtable类型的类成员设置索引
    {
        private Hashtable ht;//字符串索引用到哈希表来存放键值对
        public MyStringIndex(Hashtable ht)
        {
            this.ht = ht;
        }
        public string this[string key]
        {
            get
            {
                string name =(string)ht[key];
                return name;
            }
            set
            {
                ht[key] = value;
            }
        }

如果大家对于上面代码存有疑惑,可以选择自己熟悉的集合类型来变更理解,或者了解一下Hashtable(后续我会编写说明)。

4.小结
我们来看一道题目:
C#中索引器是否只能根据数字进行索引?是否允许多个索引器参数?

相关文章

  • 01-- (2019-10-09)-- 来 了解一下索引器

    1.什么是索引器?   索引器是c#语言中的一种类成员,它可以让对象像数组一样被索引获取。 例如: 2.一个小De...

  • 索引器

    一.索引器是类似属性的东西 1.1和属性一样,索引器不用分配内存来储存。 1.2索引器和属性都主要被用来访问其他数...

  • 索引构建

    1 索引构建 索引构建 建立倒排索引的过程,就是索引构建 索引器 构建索引的程序或者计算机,就是索引器 索引器需要...

  • 04-- (2019-10-09)-- 来 了解一下CTS、CL

    1.什么是MSIL(IL)? 在.Net平台下,不仅仅只可以运行C#,编写的程序,还有VB.Ne,F#等。IL(微...

  • Elasticsearch学习笔记(06) - 倒排索引简介

    Elasticsearch的核心是基于倒排索引。因此,我们有必要了解一下倒排索引算法。 简单的例子 既然有倒排索引...

  • 2019-10-09

    2019-10-09 宗明3 字数 379 · 阅读 0 2019-10-0921:29 2019-10-09 宗...

  • 索引器, 正则表达式(Regex)

    /* * 索引器: * 作用:让对象具有快速访问元素的能力 * 索引器和数组的区别: * 1.索引器的索引类型不限...

  • Linux 文件删除原理

    了解Linux文件删除原理先了解一下文件inode索引节点,每个文件在Linux系统里都有唯一的索引节点(身份证号...

  • 09 MySQL-初识MySQL-索引-如何选择合适的索引

    介绍过索引的基本概念,了解了唯一索引和普通索引的区别。继续来谈谈,在不同的业务场景下,应该选择普通索引,还是唯一索...

  • mysql优化之入门部分

    理解了索引,才能用好索引。 微微了解一下索引是什么 很多人用书来比作 Mysql,用来解释是什么。诚然,这是一个很...

网友评论

      本文标题:01-- (2019-10-09)-- 来 了解一下索引器

      本文链接:https://www.haomeiwen.com/subject/ulowpctx.html