这是将字符串数组的每个项目设置为Enumerable数组的最佳方法吗?我自己想出了这个方法,我试着使用我的google-foo但却无法用连贯的句子来描述我在这里想要做的事情..
string[] adapterDesc = new string[] {};
int i = 0;
foreach(NetworkInterface adapter in adapters)
{
adapterDesc[i] = adapter.Description;
i++;
}
...
答案 0 :(得分:2)
不,该代码将因{1}}异常而失败,因为您声明了一个包含零元素的字符串数组。
因此,当您尝试设置第一个元素时,它将崩溃。
相反,您可以使用List来动态添加元素
IndexOutOfRange
List比数组更灵活,因为你不必知道数组的大小,你仍然可以像使用它一样使用它
List<string> adapterDesc = new List<string>();
foreach(NetworkInterface adapter in adapters)
{
adapterDesc.Add(adapter.Description);
}
...
如果您想使用Linq,那么您甚至可以使用
将代码缩减到一行for(int x = 0; x < adapterDesc; x++)
{
Console.WriteLine(adapterDesc[x]);
}