【发布时间】:2010-11-20 10:37:44
【问题描述】:
假设我有数组 string[] weekDays = { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" }; ,我想找出包含 's' 的数组元素的索引。如何使用 Linq 做到这一点?
我试过int[] indexOfDaysContainingS = weekDays.Where(day => day.Contains("s")).Select((day, index) => index).ToArray();,但这会返回0,1,2,因为它可能是在Where() 子句之后获取过滤后的IEnumberable<string> 的索引。如果我把 Select() 放在第一位,那么我所拥有的只是索引并且不能按天过滤。
我需要进行哪些更改才能使其正常工作并返回1,2,3?
【问题讨论】:
-
我知道这不是问题的一部分,但为什么不使用 for 循环而不是 Linq。您会节省很多时间的开发时间。