未分類

C# List コレクションをユーザー定義のクラス型で初期化する

準備

(なし)

デザイン

1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にリストボックス (listBox1) を配置します。

サンプルコード (C#)

// 名前空間の追加
// (なし)

// クラスの定義
public class SalesData
{
  public string ProductName { get; set; }
  public int Price { get; set; }
}

// コード
private void button1_Click(object sender, EventArgs e)
{
  List<SalesData> lt1 = new List<SalesData>
  {
    new SalesData {ProductName = "Apple", Price = 100},
    new SalesData {ProductName = "Peach", Price = 200},
    new SalesData {ProductName = "Grape", Price = 300},
    new SalesData {ProductName = "Lemon", Price = 400},
    new SalesData {ProductName = "Melon", Price = 500}
  };
  
  foreach (var lt in lt1)
  {
    listBox1.Items.Add(lt.ProductName);
  }
}

サンプルコード (C++/CLI)

この言語にはサンプルコードはありません。

解説

クラスにプロパティを定義している場合には、クラスのインスタンス化時にプロパティ名を指定して初期化できます。これを初期化子と呼ぶようです。

結果

動作確認環境

Visual Studio 2015 Professional (C# 6.0)

-未分類