Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在C中选择数组中的项目范围_C#_.net_Arrays - Fatal编程技术网

C# 在C中选择数组中的项目范围

C# 在C中选择数组中的项目范围,c#,.net,arrays,C#,.net,Arrays,我想在项目数组中选择一系列项目。 例如,我有一个包含1000个项目的数组,我想提取100到200个项目并将它们放入另一个数组中 你能帮我怎么做吗?在C 8中,范围运算符允许: var dest = source[100..200]; 以及一系列其他开放式、从末端开始计算的选项等 在此之前,LINQ允许: var dest = source.Skip(100).Take(100).ToArray(); 或手动: var dest = new MyType[100]; Array.Copy(so

我想在项目数组中选择一系列项目。 例如,我有一个包含1000个项目的数组,我想提取100到200个项目并将它们放入另一个数组中


你能帮我怎么做吗?

在C 8中,范围运算符允许:

var dest = source[100..200];
以及一系列其他开放式、从末端开始计算的选项等

在此之前,LINQ允许:

var dest = source.Skip(100).Take(100).ToArray();
或手动:

var dest = new MyType[100];
Array.Copy(source, 100, dest, 0, 100);
       // source,source-index,dest,dest-index,count

如果答案对你有帮助,一定要接受它。@julianbechtold它也过时了9年;C8将基于范围和索引的操作添加为一等公民;我将更新这个示例,但使用python示例或myArray[100:200],在C8中,即myArray[100..200],它还必须是一个核心应用程序。dot net 4.8不喜欢它,即使它是C9,缺少System.Range和System.Index。@MarcGravel数组[1..10]创建了一个包含数据副本的新数组,并且似乎是RuntimeHelpers.GetSubArray的语法简写;而span[1..10]在该span上获得一个切片,是.slice的缩写。我想这是由于传统原因造成的,但对我来说,它似乎没有通过最令人惊讶的测试。