如何给数组,字典等集合类型设置Get访问器
假设有这样一个字典:
public static Dictionary<int, string> SexList;
SexList里面有两条记录(1,"男"),(2,"女"),SexList[1]="男",SexList[2]="女"
我希望设置一个Get访问器,让SexList[3],SexList[4],SexList[5]等等都返回"男",如何做到?
[解决办法]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class MyClass
{
public static Dictionary<int, string> SexList = new Dictionary<int, string>();
public string this[int i]
{
get { if (SexList.ContainsKey(i)) return SexList[i]; else return "男"; }
}
}
class Program
{
static void Main(string[] args)
{
MyClass.SexList.Add(1, "男");
MyClass.SexList.Add(2, "女");
MyClass instance = new MyClass();
for (int i = 0; i <= 5; i++)
{
Console.WriteLine(instance[i]);
}
}
}
}