配列から List<T>へ変換する - C#

C#で配列から List<T> へ変換するコードを紹介します。

概要

配列からList<T>へ変換する場合には、Listクラスのコンストラクタに配列を与えます。
メモ
逆の処理であるList<T>から配列に変換する場合のコードはこちらの記事を参照してください。

プログラム例 : int[] から List<int> への変換

UI

下図のUIを作成します。フォームにMultiLinesプロパティをtrueに設定したテキストボックス、ボタンを配置します。今回は[button2]のみを利用します。

コード

下記のコードを記述します。[button2]のクリックイベントを実装します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ArrayListConvert
{
  public partial class FormMain : Form
  {
    public FormMain()
    {
      InitializeComponent();
    }

    private void button2_Click(object sender, EventArgs e)
    {
      int[] array = new int[5];

      array[0] = 2;
      array[1] = 8;
      array[2] = 34;
      array[3] = 12;
      array[4] = 6;

      List<int> vlist = new List<int>(array);

      for (int i = 0; i < vlist.Count; i++) {
        textBox1.Text += vlist[i] + "\r\n";
      }
    }
  }
}

解説

下記コードで配列を作成し値を代入します。
  int[] array = new int[5];
  array[0] = 2;
  array[1] = 8;
  array[2] = 34;
  array[3] = 12;
  array[4] = 6;

配列の値は下記に設定されます。

配列のインデックス01234
2834126

リストのコンストラクタの引数に配列を与え、配列からリストに変換します。
  List<int> vlist = new List<int>(array);

forループでリストの値を参照しテキストボックスに表示します。
  for (int i = 0; i < vlist.Count; i++) {
    textBox1.Text += vlist[i] + "\r\n";
  }

実行結果

[button2]をクリックします。配列の値がListにコピーされ、その値がテキストボックスに表示されます。

プログラム例 : string[] から List<string> への変換

string[] から List<string>に変換する場合は
List<string>のコンストラクタに string[]を渡します

UI

下図のUIを作成します。フォームにMultiLinesプロパティをtrueに設定したテキストボックス、ボタンを配置します。今回は[button4]のみを利用します。

コード

下記のコードを記述します。[button4]のクリックイベントを実装します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ArrayListConvert
{
  public partial class FormMain : Form
  {
    public FormMain()
    {
      InitializeComponent();
    }

    private void button4_Click(object sender, EventArgs e)
    {
      string[] array = new string[5];

      array[0] = "Duck";
      array[1] = "Chiken";
      array[2] = "Hawk";
      array[3] = "Lion";
      array[4] = "Panda";

      List<string> vlist = new List<string>(array);

      for (int i = 0; i < vlist.Count; i++) {
        textBox1.Text += vlist[i] + "\r\n";
      }
    }
  }
}

解説

下記コードで配列を作成し値を代入します。
  string[] array = new string[5];

  array[0] = "Duck";
  array[1] = "Chiken";
  array[2] = "Hawk";
  array[3] = "Lion";
  array[4] = "Panda";

リストのコンストラクタの引数に配列を与え、配列からリストに変換します。
  for (int i = 0; i < vlist.Count; i++) {
    textBox1.Text += vlist[i] + "\r\n";
  }

実行結果

[button4]をクリックします。配列に代入された値がリストにコピーされ、その値がテキストボックスに表示されます。

著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2018-03-13
iPentec all rights reserverd.