如何检索每个第N个位置的数组元素?

时间:2012-11-04 20:50:08

标签: c# arrays

在C#4.0中,如果element + k的位置是n的倍数,有没有办法将double []的每个元素提取到另一个数组?即如果k3n4,我想从数组a2创建一个数组a1,第3,第7 ,第11个......位置(所以在C#中,因为数组从0开始,它将是a1[2]a1[6]a1[10] ......等等)

我感兴趣的是在C#中以最快的方式实现这一点,我知道如何使用for循环来实现这一点。

1 个答案:

答案 0 :(得分:1)

我认为没有比使用for-loop更快的方法。无论如何,可以使用Linq IEnumerable上的double[] doubleArray = {10.0,3.0,5.0,6.0}; IEnumerable<double> = doubleList.Where((number,index) => number + index % n == 0 ); 操作:

{{1}}

我不确定我是否理解了你想要满足的条件。无论如何,用所需的方法替换匿名方法体。