C# 是否可以将堆栈与LINQ合并
我刚开始学LINQ, 我想知道是否可以使用LINQ将元素分组到3个不同的堆栈中。 这就是我所拥有的,是否可以在from子句中添加多个数组,以及如何添加C# 是否可以将堆栈与LINQ合并,c#,linq,stack,C#,Linq,Stack,我刚开始学LINQ, 我想知道是否可以使用LINQ将元素分组到3个不同的堆栈中。 这就是我所拥有的,是否可以在from子句中添加多个数组,以及如何添加 var uniqueValues = from n in valuesStack.ToArray() group n by n into nGroup select nGroup.Key; 这是未经测试的: var uniqueValues = fr
var uniqueValues =
from n in valuesStack.ToArray()
group n by n into nGroup
select nGroup.Key;
这是未经测试的:
var uniqueValues =
from stack in stacks
from n in stack
group n by n into nGroup
select nGroup.Key;
您可以
Union
将堆栈组合在一起
var s1 = new Stack<int>();
var s2 = new Stack<int>();
var s3 = new Stack<int>();
var r = s1.Union(s2.Union(s3)).ToArray();
var s1=新堆栈();
var s2=新堆栈();
var s3=新堆栈();
var r=s1.Union(s2.Union(s3)).ToArray();
或者您可以使用Union:
var uniqueValues = stack1
.Union(stack2)
.Union(stack3);
您是在描述SQL中的联合查询吗?谢谢,这非常适合我的需要!我将继续尝试LINQ选项,只是为了知道它:)完美:)所以我知道,使用LINQ并不是必需的,但它可以做到吗?@david:
Union
被认为是LINQ操作符。它是System.Linq
命名空间中可枚举
类的一部分。@Robery:有点灰色区域。“LINQ”是“语言集成查询”,但这不是使用任何语言查询功能,只是图书馆。@杰姆斯-实际上我会认为这是黑白的。除非您在sl select s中从s编写一个查询,例如,否则您不会使用LINQ。
var uniqueValues = stack1
.Union(stack2)
.Union(stack3);