0

私は3つの文字列配列を持っています:

private readonly string[] PMCTableColumnNames = new string[] { "PMCIP", "Description", "Cam1ReferencePoints", "Cam2ReferencePoints", "DataserverIP" };
private readonly string[] PMDTableColumnNames = new string[] { "PMDIP", "Description" };
private readonly string[] PMDZonesTableColumnNames = new string[] { "PMDIP", "Description", "Zone" };

これらの配列を指す配列を次のように作成したいと思います。

private var[] ArrayReferences = new var[] { PMCTableColumnNames, PMDTableColumnNames, PMDZonesTableColumnNames };

この(ArrayReferences)配列にインデックスを付けるとき、次のように特定の配列のすべての要素を取得したいと思います。

string[] _PMDTableColumnNames = ArrayReferences[1];

どうやってやるの?

4

3 に答える 3

3

配列の配列を作成できます。

private string[][] ArrayReferences;

ArrayReferencesフィールド初期化子で他の配列を参照できないため、コンストラクターで初期化する必要があることに注意してください。すなわち

public class ClassName
{
    private readonly string[] PMCTableColumnNames = new string[] { "PMCIP", "Description", "Cam1ReferencePoints", "Cam2ReferencePoints", "DataserverIP" };
    private readonly string[] PMDTableColumnNames = new string[] { "PMDIP", "Description" };
    private readonly string[] PMDZonesTableColumnNames = new string[] { "PMDIP", "Description", "Zone" };

    private string[][] ArrayReferences;

    public ClassName()
    {
        ArrayReferences = new string[][] { PMCTableColumnNames, PMDTableColumnNames, PMDZonesTableColumnNames };
    }

    void SomeMethod()
    {
        string[] _PMDTableColumnNames = ArrayReferences[1];
    }
}
于 2012-07-07T10:53:51.843 に答える
0
string[][] ArrayReferences = new [] { PMCTableColumnNames, PMDTableColumnNames, PMDZonesTableColumnNames };

あるいは単に

var ArrayReferences = new [] { PMCTableColumnNames, PMDTableColumnNames, PMDZonesTableColumnNames };

それをする必要があります。

于 2012-07-07T10:57:23.120 に答える
0

この種の目的のためのArrayListクラスを使用するだけです。

于 2012-07-07T11:00:48.643 に答える