0

私は C# が初めてで、他のオブジェクト指向言語にも慣れていないので、無知で申し訳ありません。次のように、2 つのメンバーを持つクラスに関連付けられたリスト変数を作成しようとしています。

List<bus> bus_list_2d = new List<bus>();

public class bus
{
  public string channel { get; set; }
  public List<String> label { get; set; }
}

複数のバッファ ラベルを保持するチャネルが割り当てられた xml ドキュメントを解析します。チャネルの正確な数は不明であり、バッファ ラベルでも同じであるため、なぜリストを使用したかったのですか。

単一のチャネルを追加し、ラベル項目を追加し続けてから、次のチャネルに移動してその下にラベル項目を追加するという追加機能をどのように作成するのか疑問に思っていました。誰かがこれのスニペットの例を教えてもらえますか?

4

4 に答える 4

0

paramsメソッドの引数属性を使用して、AddBus()すべての情報を 1 行で渡してみてください (以下をProgram参照)。

public class Foo
{
    List<bus> bus_list_2d=new List<bus>();

    public void AddBus(string channel, params string[] labels)
    {
        bus_list_2d.Add(new bus()
        {
            channel=channel,
            label=new List<string>(labels)
        });
    }
}

public class bus
{
    public string channel { get; set; }
    public List<String> label { get; set; }
}

class Program
{
    static void Main(string[] args)
    {
        Foo foo=new Foo();

        foo.AddBus("ABC", "A", "B", "C");
    }
}
于 2013-11-04T21:28:45.990 に答える