假设我有一个包含五个元素的字符串数组{" dog"," cat"," rat"," dog",& #34;牛""狗"}
在这个例子中有6个元素。我想知道每个元素的索引。 IndexOf()方法首次出现该单词。但我想知道所有元素的索引,包括重复的元素,如狗重复3次。所以,我想知道动物[0],动物[3],动物[5]的所有狗的指数。以及猫,老鼠和牛的指数也
答案 0 :(得分:0)
这是LINQ查询,您可以找到带索引的重复项
var data = new [] {"dog","cat","rat","dog","cow","dog"};
var duplicates = data
.Select((x, index) => new {Text = x, index})
.Where(x => (data
.GroupBy(i => i)
.Where(g => g.Count() > 1)
.Select(g => g.Key).ToList())
.Contains(x.Text));
foreach (var duplicate in duplicates)
{
Debug.WriteLine("Name:" + duplicate.index + " Index:" + duplicate.Text);
}