📅  最后修改于: 2023-12-03 15:29:48.785000             🧑  作者: Mango
在C#中,我们可以使用集合类来创建列表。当我们需要将新的项目添加到列表中时,我们可以使用Add方法。但是,如果列表中已经有了相同的项目,那么我们就会添加重复的项目。在本篇文章中,我们将介绍如何仅将列表中尚未包含的项目添加到列表中。
我们可以使用List
List<string> mylist = new List<string>();
mylist.Add("apple");
mylist.Add("banana");
mylist.Add("orange");
mylist.Add("apple");
List<string> newlist = new List<string>();
newlist.Add("banana");
newlist.Add("cherry");
newlist.Add("date");
var result = newlist.Where(x => !mylist.Contains(x)).Distinct().ToList();
foreach (var item in result)
{
mylist.Add(item);
Console.WriteLine(item);
}
在上面的代码中,我们首先创建了一个名为mylist的列表,并向其中添加了4个项目:apple、banana、orange和apple。然后,我们创建了另一个名为newlist的列表,并向其中添加了3个项目:banana、cherry和date。
接下来,我们使用Where方法和Contains方法来查找newlist中与mylist中相同的项(不包括重复的项),最后使用Distinct方法对结果进行去重。最后,我们将结果添加到mylist中,并使用foreach循环在控制台中打印每个添加的项目。
运行上面的代码,你会发现输出结果为:cherry和date。
除了使用List
HashSet<string> mylist = new HashSet<string>();
mylist.Add("apple");
mylist.Add("banana");
mylist.Add("orange");
mylist.Add("apple");
HashSet<string> newlist = new HashSet<string>();
newlist.Add("banana");
newlist.Add("cherry");
newlist.Add("date");
var result = newlist.Except(mylist).ToList();
foreach (var item in result)
{
mylist.Add(item);
Console.WriteLine(item);
}
运行上面的代码,你会发现输出结果为:cherry和date。
在上面的代码中,我们首先使用HashSet
通过本篇文章,你已经了解了如何仅将列表中尚未包含的项目添加到列表中。我们可以使用List