1

如果我们使用对象数组,我们如何使用索引器???

对于单个对象:

static void Main(string[] args)
{
    MYInd mi = new MYInd();
    mi[1] = 10;
    Console.WriteLine(mi[1]);
    mi[2, 10] = 100;
    Console.WriteLine(mi[2]);

    Console.WriteLine(mi[3, 10]);

对象数组应该怎么做?

MYInd[] mir = new MYInd[3];

我们如何使用每个对象和索引器?

4

2 回答 2

2

你有几个选择,如果你想迭代你做

foreach(MYInd mi in mir)
    Console.WriteLine(mi[3, 10]);

如果你想MYInd从数组中挑选出一个特定的,你可以一步完成

Console.WriteLine(mir[1][3, 10]); // [1] picks out one object from the array

或分两步

MYInd mi = mir[1]; // pick out one object from the array
Console.WriteLine(mi[3, 10]);
于 2011-02-19T06:47:40.147 回答
0
mir[0][1, 2]

但你可以把它想象成:

(mir[0])[1, 2]

括号不是必需的,因为 [ 运算符是从左到右解析的(如 (1 + 2) + 3 == 1 + 2 + 3。我认为它称为左关联性,但我不确定 :-) )

请记住,您必须同时初始化数组和元素:

var mir = new MyInd[5];
for (int i = 0; i < mir.Length; i++) 
{
    mir[i] = new MyInd();
}
于 2011-02-19T07:01:15.360 回答