一个类允许有多个索引器吗
是的,一个类可以有多个索引器。在C#中,可以使用多个索引器来定义一个类,每个索引器具有不同的参数类型和返回类型。例如,一个类可以有一个整数索引器和一个字符串索引器,分别返回不同的数据类型。以下是一个使用多个索引器的示例:
public class MyClass
{
private int[] myInts;
private string[] myStrings;
public MyClass(int[] ints, string[] strings)
{
myInts = ints;
myStrings = strings;
}
public int this[int index]
{
get { return myInts[index]; }
set { myInts[index] = value; }
}
public string this[string index]
{
get { return myStrings[Array.IndexOf(myStrings, index)]; }
set { myStrings[Array.IndexOf(myStrings, index)] = value; }
}
}
在上面的示例中,MyClass类有一个整数索引器和一个字符串索引器,分别使用整数和字符串作为索引。使用索引器可以像下面这样访问类的实例:
MyClass obj = new MyClass(new int[] { 1, 2, 3 }, new string[] { "one", "two", "three" });
int value1 = obj[1]; // value1 = 2
string value2 = obj["two"]; // value2 = "two"
obj[0] = 10;
obj["three"] = "THREE";
``
原文地址: https://www.cveoy.top/t/topic/fq3k 著作权归作者所有。请勿转载和采集!