zoukankan      html  css  js  c++  java
  • C#中的Skip()和Take()

    Skip()和Take()方法都是IEnumerable<T> 接口的扩展方法,包括C#中的所有Collections类,如ArrayList,Queue,Stack等等,还有数组和字符串都可以调用这两个方法。

    int[] test = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    test.Skip(i)表示从下标i开始截取,返回类型为IEnumerable<T>,返回的集合中包括test[i]
    Console.WriteLine(string.Concat(test.Skip(0)));;//结果为{0,1,2,3,4,5,6,7,8,9,}
    test.Take(i)表示到下标i结束截取,返回类型为IEnumerable<T>,返回的集合中不包括test[i]
    Console.WriteLine(string.Concat(test.Take(0)));//结果为空字符串

      1. 注意在Skip和Take连用时,后者的输入是前者的输出,而不是原输入
        2.  Console.WriteLine(string.Concat(test.Skip(2).Take(4)));//注意!结果为{2,3,4,5}
         
        var testList = new List<int>();
        //比如  testList里面是 1,2,3,4,5,6,7,8,9,10
        var result = testList.Skip(5);  //返回值就是 6,7,8,9,10;
        var result = testList.Take(5);  //返回值就是 1,2,3,4,5
        //搭配使用,一般用来分页
        var result = list.Skip(2).Take(2); //返回值 3,4
  • 相关阅读:
    利用百度搜集子域名--爬虫技巧
    IoC模式
    SpringMVC @RequestBody接收Json对象字符串
    用eclipse创建动态web项目手动生成web.xml方法
    1.Java Spring MVC入门 安装
    获取所有注解
    带参数的方法获取注解
    利用反射调用注解
    java枚举类型
    java创建多线程
  • 原文地址:https://www.cnblogs.com/DSC1991/p/11593412.html
Copyright © 2011-2022 走看看