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);
}