我有这样一个数组:
Foo[] objects;
Run Code Online (Sandbox Code Playgroud)
我想要一份KeyValuePair<Foo, float>来自的清单objects.
第float一个元素的值是0.2f,它应该按元素递增.它表示第一个元素的浮点值为0.2,第三个元素的浮点值为0.6.
for循环完成此任务:
float value = 0.2f;
foreach(Foo f in objects)
{
myList.Add(new KeyValuePair<Foo,float>(f, value));
value += 0.2f
}
Run Code Online (Sandbox Code Playgroud)
我只是想知道有没有办法用LINQ和lambda表达式做到这一点?
这是你在找什么?
var myList = objects
.Select((f, index) => new KeyValuePair<Foo, float>(f, (index + 1) * 0.2f))
.ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |