当前位置: 移动技术网 > IT编程>开发语言>c# > C#入门之索引器使用实例

C#入门之索引器使用实例

2019年07月18日  | 移动技术网IT编程  | 我要评论
本文实例展示了c#索引器的使用方法,对于c#的初学者来说是很有必要熟练掌握的,具体用法如下: 首先,索引器(indexer)是c#引入的一个新型的类成员,它使得类中的对象

本文实例展示了c#索引器的使用方法,对于c#的初学者来说是很有必要熟练掌握的,具体用法如下:

首先,索引器(indexer)是c#引入的一个新型的类成员,它使得类中的对象可以像数组那样方便、直观的被引用。索引器非常类似于属性,但索引器可以有参数列表,且只能作用在实例对象上,而不能在类上直接作用。定义了索引器的类可以让您像访问数组一样的使用 [ ] 运算符访问类的成员。(当然高级的应用还有很多,比如说可以把数组通过索引器映射出去等等)

索引器的语法如下:

1、它可以接受1个或多个参数
2、使用this为索引器的名字
3、参数化成员属性:包含set、get方法。

格式如下:
 
[访问修饰符] 数据类型 this[数据类型 标识符]
{
get{};
set{};
}

实例代码如下:

public class indexsy
  {
    private string[] array ;
    public indexsy(int num)
    {
      array = new string[num];
      for (int i = 0; i < num; i++)
      {
        array[i] = "array"+i;
      }
    }
 
    public string this[int num]
    {
      get { return array[num]; }
      set { array[num] = value; }
    }
  }
 
///索引器调用
      indexsy sy = new indexsy(10);
      response.write(sy[5]);//输出array5

多参数的实例如下:

public class indexsy
  {
    private string[] array ;
    public indexsy(int num)
    {
      array = new string[num];
      for (int i = 0; i < num; i++)
      {
        array[i] = "array"+i;
      }
    }
 
    public string this[int num, string con]
    {
      get {
        if (num == 6)
        {
          return con;
        }
        else
        {
          return array[num];
        }
      }
      set
      {
        if (num == 6)
        {
          array[num] = con;
        }
        else
        {
          array[num] = value;
        }
 
      }
    }
  }
 
//方法调用
      indexsy sy = new indexsy(10);
      sy[5,"10"] = "更换set值"; 
      response.write(sy[5,""]+" "+sy[6,"更换内部参数"]+" "+sy[8,""]);//输出为更换set值 更换内部参数 array8,

感兴趣的读者可以动手调试上述代码,可以加深对c#索引器的使用方法的认识,进一步巩固基础知识。

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网