Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.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# 带Linq的可数矩阵_C#_Linq_Linq To Objects - Fatal编程技术网

C# 带Linq的可数矩阵

C# 带Linq的可数矩阵,c#,linq,linq-to-objects,C#,Linq,Linq To Objects,是否有一种内置方法可以将Linq中的IEnumerable拼接到对象 比如: List<string> options = new List<string>(); // Array of 20 strings List<string> lastOptions = options.Splice(1, 5); // Gets me all strings 1 through 5 into a new list List options=new List();//

是否有一种内置方法可以将Linq中的
IEnumerable
拼接到对象

比如:

List<string> options = new List<string>(); // Array of 20 strings
List<string> lastOptions = options.Splice(1, 5); // Gets me all strings 1 through 5 into a new list
List options=new List();//由20个字符串组成的数组
List lastOptions=选项。拼接(1,5);//将所有字符串1到5放入新列表
试试:

List options=new List();
List lastpoptions=options.Skip(0).Take(5.ToList();
skip用于显示如何跳过x元素(tnx drch)


您可以创建如下内容:(扩展方法)

公共静态类扩展
{
公共静态列表拼接(此列表、整数偏移、整数计数)
{
返回列表.Skip(offset).Take(count).ToList();
}
}
但这只对列表可用


您也可以在
IEnumerable

公共静态类扩展
{
公共静态IEnumerable拼接(此IEnumerable列表、int偏移量、int计数)
{
返回列表。跳过(偏移)。获取(计数);
}
}
这样列表就不会完全迭代

像这样使用它:

List<string> lastOptions = options.Splice(1, 5).ToList();
List lastpoptions=options.Splice(1,5).ToList();

我更喜欢这种方式,因为它可以用于多个linq查询。

skip是要跳过的元素数,而不是要跳过的项的索引。如果你不使用/不能使用linq,也有。非常好的一个@Ahmed KRAIEM,不知道…tnx+1
public static class SpliceExtension
{
    public static List<T> Splice<T>(this List<T> list, int offset, int count)
    {
        return list.Skip(offset).Take(count).ToList();
    }
}
public static class SpliceExtension
{
    public static IEnumerable<T> Splice<T>(this IEnumerable<T> list, int offset, int count)
    {
        return list.Skip(offset).Take(count);
    }
}
List<string> lastOptions = options.Splice(1, 5).ToList();