我正在寻找最优雅的解决方案,以便在请求的索引未超出范围时从 object[]
获取值。
我目前的解决方案如下:
public object GetNamedParametersFrom(GenericObject genericObject)
{
string nameFromListOne = String.Empty;
string nameFromListTwo = String.Empty;
for (int i = 0; i < genericObject.ListOfThings.Count; i++)
{
switch (i)
{
case 0:
nameFromListOne = genericObject.ListOfThings[i].Name;
break;
case 1:
nameFromListTwo = genericObject.ListOfThings[i].Name;
break;
}
}
return new {
nameFromListOne,
nameFromListTwo
}
}
最佳答案
为什么不使用内置的 ElementAtOrDefault
来自 Linq 的方法?
string[] names =
{ "Hartono, Tommy", "Adams, Terry", "Andersen, Henriette Thaulow",
"Hedlund, Magnus", "Ito, Shu" };
int index = 20;
string name = names.ElementAtOrDefault(index);
关于c# - 如果没有超出范围,则从数组中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30341810/