代码改变世界

C# 索引器的简单例子

2011-12-03 12:46  Andrew.Wangxu  阅读(397)  评论(0编辑  收藏  举报

这个例子是使用索引器简单模仿一个string数组。

因为索引器本身就比较像数组,下面是关于索引器的概述:

  • 索引器使得对象可按照与数组相似的方法进行索引。

  • get 访问器返回值。set 访问器分配值。

  • this 关键字用于定义索引器。

  • value 关键字用于定义由 set 索引器分配的值。

  • 索引器不必根据整数值进行索引,由您决定如何定义特定的查找机制。

  • 索引器可被重载。

  • 索引器可以有多个形参,例如当访问二维数组时。

例子运行效果:

 

代码如下:

Program.cs完整代码:

namespace ClassIndex  
{
class Program
{
static void Main(string[] args)
{
MyString myStr = new MyString(10);
myStr[1] = "test";
myStr[2] = "test2";
Console.WriteLine(myStr[1]);
Console.WriteLine(myStr[2]);
Console.ReadLine();
}
}
}

 

MyString.cs完整代码:

namespace ClassIndex  
{
class MyString
{
string[] strArray;
public MyString(int index)
{
strArray = new string[index];
}

public string this[int index]
{
get { return strArray[index]; }
set { strArray[index] = value; }
}
}
}

 

以上是该例子的完整代码,若编译有问题,可以下载我上传的项目包:

https://files.cnblogs.com/andrew-blog/ClassIndex.rar

参考:http://www.wxzzz.com/?id=41