背景:
我正在研究评估器(我知道有可用的解决方案,但我需要一些我需要自己实现的功能)。我需要在评估中找到所有出现的开括号。但是,为此我需要括号的所有索引。
问题:
是否有类似 AllIndexesOf 方法返回 aint[]
或IEnumerable<int>
?
没有,但您可以使用以下 LINQ 查询获取所有索引。
int number = 10;
int[] intArray = new[] { 1, 32, 10, 5, 65, 6, 10, 10 };
var allIndexes = intArray.Select((r,i)=> new {value = r, index = i})
.Where(r=> r.value == number)
.Select(r=> r.index);
allIndexes
将包含2,6 and 7
你也可以使用Enumerable.Range
var indexes = Enumerable.Range(0, list.Count)
.Where(index => list[index] == yourValue);