2016-07-23 196 views
-2

如果我有在C#中包含以下元素的列表:C#列表中删除多个项目

Fish 
Fish 
Food 
Stick 
Fish 

而且我用List<string>.Remove("Fish")莫非要删除所有鱼类元素或只是其中之一?

+0

可能毫无关联到你所需要的,但如果你想避免在第一时间被输入任何重复,你可以看看其他集合类型,如[HashSets](https://msdn.microsoft.com/en-us/library/bb359438(v = vs.110).aspx)而不是列表。 – keyboardP

+0

如果你想在你的列表中有不同的值,你可以使用.Distinct() –

回答

8

MSDN

从清单中删除一个特定对象的第一次出现。

它消除了第一,但你可以使用RemoveAll LINQ的扩展方法:

List.RemoveAll(x=> x == "Fish"); 
+0

非常感谢。 – McLucario

+0

@McLucario当问题通过15分钟时,请将此标记为已接受的答案。 – user3185569

+0

@ user3185569为什么15分钟? – MichaelMao