Mik*_*zur 4 .net c# syntax loops for-loop
在查看C#代码时,我经常会看到这样的模式:
DataType[] items = GetSomeItems();
OtherDataType[] itemProps = new OtherDataType[items.Length];
int i = 0;
foreach (DataType item in items)
{
// Do some stuff with item, then finally
itemProps[i] = item.Prop;
i++;
}
Run Code Online (Sandbox Code Playgroud)
for循环遍历对象items,但也保持counter(i)以进行迭代itemProps.我个人不喜欢这种额外的i闲逛,而是可能做的事情如下:
DataType[] items = GetSomeItems();
OtherDataType[] itemProps = new OtherDataType[items.Length];
for (int i = 0; i < items.Length; i++)
{
// Do some stuff with items[i], then finally
itemProps[i] = items[i].Prop;
}
Run Code Online (Sandbox Code Playgroud)
对于我不知道的第一种方法,是否有一些好处?这是每个人都试图使用这种花哨foreach (...)语法的结果吗?我对你的意见感兴趣.
如果你使用C#3.0会更好;
OtherDataType[] itemProps = items.Select(i=>i.Prop).ToArray();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6668 次 |
| 最近记录: |