小编Ham*_*m3d的帖子

通过迭代数组来创建KeyValuePair列表

我有这样一个数组:

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表达式做到这一点?

.net c# linq

1
推荐指数
1
解决办法
91
查看次数

将两个序列组合成不同类型

我有两个类定义如下:

class Foo
{
  public string name {get; set;}
  public long number {get; set;}
}

class Bar
{
  //some properties

  public string otherName {get; set;}
  public long otherNumber {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

如何IEnumerable将这两种类型的两个序列组合成一个新的匿名类型,该类型由两个类的属性组合而成.

例:

Foo:
name1 - number1
name2 - number2
name3 - number3

Bar:
otherName1 - otherNumber1
OtherName2 - otherNumber2

Desired Result:
name1 - number1
name2 - number2
name3 - number3
otherName1 - otherNumber1
OtherName2 - otherNumber2
Run Code Online (Sandbox Code Playgroud)

Zip在linq中试过功能但没有运气.

c# linq collections

1
推荐指数
1
解决办法
930
查看次数

标签 统计

c# ×2

linq ×2

.net ×1

collections ×1