在C#4.0中,如果element + k
的位置是n
的倍数,有没有办法将double []的每个元素提取到另一个数组?即如果k
为3
且n
为4
,我想从数组a2
创建一个数组a1
,第3,第7 ,第11个......位置(所以在C#中,因为数组从0
开始,它将是a1[2]
,a1[6]
,a1[10]
......等等)
我感兴趣的是在C#中以最快的方式实现这一点,我知道如何使用for循环来实现这一点。
答案 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}}
我不确定我是否理解了你想要满足的条件。无论如何,用所需的方法替换匿名方法体。