gpt4 book ai didi

c# - 使用 "foreach"语句将字符串数组的索引值设置为可枚举数组中某项的索引值。

转载 作者:行者123 更新时间:2023-11-30 23:28:03 25 4
gpt4 key购买 nike

这是将字符串数组的每一项设置为可枚举数组的每一项的最佳方法吗?我自己想出了这种方法,我尝试使用我的 google-foo 但无法真正想出连贯的句子来描述我在这里尝试做的事情..

string[] adapterDesc = new string[] {};
int i = 0;
foreach(NetworkInterface adapter in adapters)
{
adapterDesc[i] = adapter.Description;
i++;
}
...

最佳答案

不,该代码将因 IndexOutOfRange 异常而失败,因为您声明了一个可能包含零个元素的字符串数组。
因此,当您尝试设置第一个元素时,它会崩溃。

相反,您可以使用可以动态添加元素的列表

List<string> adapterDesc = new List<string>();
foreach(NetworkInterface adapter in adapters)
{
adapterDesc.Add(adapter.Description);
}
...

列表比数组更灵活,因为你不必事先知道数组的大小,你仍然可以像使用数组一样使用它

for(int x = 0; x < adapterDesc; x++)
{
Console.WriteLine(adapterDesc[x]);
}

如果你想使用 Linq,那么你甚至可以将你的代码减少到一行

string[] adapterDesc = NetworkInterface.GetAllNetworkInterfaces()
.Select(ni => ni.Description)
.ToArray();

关于c# - 使用 "foreach"语句将字符串数组的索引值设置为可枚举数组中某项的索引值。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36186290/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com