繁体   English   中英

遍历列表,添加到数组

[英]Iterate through list, adding to array

我有一个List<PaymentObject>

付款对象包括:

DateTime付款日期; 小数金额;

我需要做的是创建一个最终像这样的数组:

        s.Data = new Data(new object[,]
        {
            { new DateTime(1970, 9, 27), 0 },
            { new DateTime(1970, 10, 10), 0.6 },
            { new DateTime(1970, 10, 18), 0.7 },
            { new DateTime(1970, 11, 2), 0.8 },
            { new DateTime(1970, 11, 9), 0.6 },
            { new DateTime(1970, 11, 16), 0.6 },
            { new DateTime(1970, 11, 28), 0.67 },
            { new DateTime(1971, 1, 1), 0.81 },
            { new DateTime(1971, 1, 8), 0.78 },
            { new DateTime(1971, 1, 12), 0.98 },
            { new DateTime(1971, 1, 27), 1.84 },
            { new DateTime(1971, 2, 10), 1.80 },
            { new DateTime(1971, 2, 18), 1.80 },
            { new DateTime(1971, 2, 24), 1.92 },
            { new DateTime(1971, 3, 4), 2.49 },
            { new DateTime(1971, 3, 11), 2.79 },
            { new DateTime(1971, 3, 15), 2.73 },
            { new DateTime(1971, 3, 25), 2.61 },
            { new DateTime(1971, 4, 2), 2.76 },
            { new DateTime(1971, 4, 6), 2.82 },
            { new DateTime(1971, 4, 13), 2.8 },
            { new DateTime(1971, 5, 3), 2.1 },
            { new DateTime(1971, 5, 26), 1.1 },
            { new DateTime(1971, 6, 9), 0.25 },
            { new DateTime(1971, 6, 12), 0 }
        });

如何遍历列表,并将每个项目添加到数组?

一种方式可能类似于:

var paymentObjectList = new List<PaymentObject>();
// assuming the above gets populated at some point 

object[,] dataArray = new object[paymentObjectList.Count, 2];
int listIndex = 0;
foreach (var paymentObject in paymentObjectList)
{
    dataArray[listIndex, 0] = paymentObject.PaymentDate;
    dataArray[listIndex, 1] = paymentObject.Amount;
    listIndex++;
}

// resuming your original code
s.Data = new Data(dataArray);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM