【发布时间】:2015-07-27 12:05:17
【问题描述】:
想象一下,我有 2 个充满值的列表。我希望将第一个列表中的所有元素写入第一列,将第二个列表中的所有元素写入第二列,依此类推。
如果两个列表的大小相同,则可以正常工作:
for (int i = 0; i < valueArray.Count(); i++)
{
var newLine = string.Format("{0},{1}", valueArray.ElementAt(i), secondValueArray.ElementAt(i));
sw.Write(newLine);
}
我的问题是,如果列表的大小不同,代码显然会出现超出范围的异常。我尝试在列之间添加“,”,但它不起作用。
【问题讨论】:
-
您需要检查其中一个列表的长度是多少,并查看它是否与您的 for 循环中的变量 I 相同。如果没有,请继续写该列,否则不要。
-
你可以用空格填充每个列表,使它们的长度相同,然后执行你已经完成的操作。
-
用空白或 -1 值填充它不是一个选项,因为它可能会使用户迷失方向。
-
您的列表属于哪种类型?
-
只是一个带有 int 值的简单 ArrayList。