C# 有没有一种方法可以在本例中使用Linq并避免示例中的for循环?

C# 有没有一种方法可以在本例中使用Linq并避免示例中的for循环?,c#,C#,我得到了以下示例代码(由于限制,使用和类被删除): static void Main(字符串[]args) { var n=int.Parse(Console.ReadLine()); var storedElements=new SortedSet(); 对于(int i=0;i

我得到了以下示例代码(由于限制,使用和类被删除):

static void Main(字符串[]args)
{
var n=int.Parse(Console.ReadLine());
var storedElements=new SortedSet();
对于(int i=0;i
整个想法是这样的:

var command = Console.ReadLine().Split().ToList();

    for (int k = 0; k < command.Count; k++)
    {
                storedElements.Add(command[k]);
    }
var命令=Console.ReadLine().Split().ToList();
for(int k=0;k
避免。从这个意义上讲,如果可能的话,我应该添加什么来让Linq发挥作用:


storedElements.Add(Console.ReadLine().Split()//WhatToAdd;

SortedSet有一个名为的方法。 所以你可以用它来代替当前的循环

for (int i = 0; i < n; i++)
{
    var command = Console.ReadLine().Split().ToList();
    storedElements.UnionWith(command);
}
for(int i=0;i
一开始这似乎很方便,但看看源代码,我不确定它的性能是否比原始循环更好。如果这是关键代码,最好测试它。

找到它:

UnionWith(Console.ReadLine().Split())

哈希集没有AddRange()


谢谢!

SortedSet上没有AddRange,是吗?
for (int i = 0; i < n; i++)
{
    var command = Console.ReadLine().Split().ToList();
    storedElements.UnionWith(command);
}