List<string>
異なる種類のデータを含む同じ長さの3 つの異なるがあります。例えば:
List<string> dates = new List<string>() { "20120301", "20120401", "20120501", "20120601", "20120701"};
List<string> times = new List<string>() { "0500", "0800", "0100", "1800", "2100" };
List<string> quantities = new List<string>() { "1", "2", "1", "3", "1" };
実際のデータは何でもかまいませんが、リストの長さは常に同じです。それらを1つにマージしたいList<DTQ>
。
public struct DTQ
{
DateTime dt;
double q;
public DTQ(DateTime dt, double q) { this.dt = dt; this.q = q; }
}
ラムダ関数でこれを行う方法はありますか? これまでのところ、データがsstrings
ではなく3 つの場合にデータをマップする方法を説明するラムダ関数を作成できました。List<string>
Func<string, string, string, DTQ> mergeFields = (d, t, q)
=> new DTQ(DateTime.ParseExact(string.Format("{0}{1}", d, t), "yyyyMMddhhmm", CultureInfo.InvariantCulture), double.Parse(q));
しかし、そこからどこに行けるかわかりません。アイデアは、この関数をリストのすべてのインデックスに適用することです。