![](/img/trans.png)
[英]Perform manipulation on all elements except last element in a List using Linq
[英]How to get all elements except the n'th element in a List using Linq
說我有10個項目的清單。
List<char> chars = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'];
我需要一個新的List,其中包含列表中除n之外的所有元素(例如,第3項'C'
)。 我不希望改變原始列表,因為我以后需要它。
另一種選擇是,我可以克隆列表並刪除該項目,但是然后必須將所有項目向上移動。
有沒有辦法使用Linq獲取列表?
編輯:
一個字符可以在List中多次出現。 我只希望刪除'n'處的出現。
您可以使用Enumerable.Where
方法。
根據謂詞過濾一系列值。
List<char> chars = new List<char>(){'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'};
var newlist = chars.Where(n => n != chars.ElementAtOrDefault(2));
這是一個DEMO
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.