起因
-
由于List在查询中,效率是比较高的。
之所以选择List还有一个原因,那就是他允许重复值。
一些场景必然会出现重复值,因此List也就作为不二之选。
问题描述:
-
但在查询的时候遇到一个问题,
由于List中间存在重复元素,但使用foreach却无法通过遍历获取到每个重复元素的索引。
解决思路:
-
我无非是想在找到一个匹配元素时,返回一个数字即可。
那我何不在遍历的时候,再维护一个int类的数字呢,实现与List同步增长,不就相当于得到索引了吗?!
List<string> TargetList=new List<string>();
TargetList.Add("男生");
TargetList.Add("女生");
TargetList.Add("男生");
List<int> match=FuncIndex("男生");
foreach(int i in match) print(i);
Public void FuncIndex(string target)
{
List<int> results = new List<int>();
for(int i=0;i<TargetList.Count;i++)
{
if (formulaIndex[i] == target)
{
results.Add(i);
}
}
return results;
}