分割List集合

  1. //构造被分隔的集合
  2. List<object> list = new List<object>();
  3. for (int i = ; i <= ; i++)
  4. {
  5. list.Add(i);
  6. }
  7.  
  8. //待导入集合组
  9. List<IEnumerable<object>> BigList = new List<IEnumerable<object>>();
  10. //定义批次分组提交量
  11. int groupItemCount = ;
  12. //被分隔集合的总数量
  13. int totalCount = list.Count();
  14. //一共被分几组
  15. int count = totalCount % groupItemCount == ? totalCount / groupItemCount : totalCount / groupItemCount + ;
  16. //将每一组都添加进大集合
  17. for (int i = ; i < count; i++)
  18. {
  19. BigList.Add(list.Skip(groupItemCount * i).Take(groupItemCount));
  20.  
  21. }
  22. foreach (IEnumerable<object> enumList in BigList)
  23. {
  24. //每一个enumList都一个10个int数据的集合
  25. foreach (int a in enumList)
  26. {
  27. //dosomething
  28. }
  29. }
  1. public static IList<List<T>> ListCut<T>(IList<T> list, int everyCount)
  2. {
  3. //待导入集合组
  4. IList<List<T>> BigList = new List<List<T>>();
  5. //被分隔集合的总数量
  6. int totalListCount = list.Count();
  7. //一共被分几组
  8. int count = totalListCount % everyCount == ? totalListCount / everyCount : totalListCount / everyCount + ;
  9. //将每一组都添加进大集合
  10. for (int i = ; i < count; i++)
  11. {
  12. BigList.Add(list.Skip(everyCount * i).Take(everyCount).ToList());
  13. }
  14.  
  15. return BigList;
  16. }
  1. string[]转list<string>
  2. string[] str={"",""};
  3. list<string> list=new list<string>(str);
  4.  
  5. list<string>string[]
  6. list<string> list=new list<string>;
  7. string[] str=list.toarray();

去除数组中的 null

  1. tableHeadNameArr = (from str in tableHeadNameArr where str != null select str).ToArray();

Select(取list中的id列数据,并按逗号分隔成字符串。例:1,2,3,4,5)

  1. //方式一
  2. //分成key-value的数组
  3. string[] id = list.Select(a => a.id.ToString()).ToArray();
  4. //dt是datatable类型的,执行LINQ语句,这里的.AsEnumerable()是延迟发生,不会立即执行,实际上什么都没有发生
  5. string[] id = dt.AsEnumerable().Select(a => a.Field<int>("id").ToString()).ToArray();
  6. //将数组变成1,2,3,4,5的字符串
  7. string ids = string.Join(",", id);
  8.  
  9. //方式二
  10. //效果等同于foreach循环
  11. foreach (var i in list)
  12. {
  13. ids += i.id + ",";
  14. }
  15. ids = ids.TrimEnd(',');
  16.  
  17. 上述代码使用LINQ 针对数据集中的数据进行筛选和整理,同样能够以一种面向对象的思想进行数据集中数据的筛选。
  18. 在使用LINQ 进行数据集操作时,LINQ 不能直接从数据集对象中查询,因为数据集对象不支持LINQ 查询,所以需要使用AsEnumerable 方法返回一个泛型的对象以支持LINQ的查询操作。
  19.  
  20. .AsEnumerable()与相对应的.AsQueryable()的区别:
  21. ) AsEnumerable()是 LINQ TO OBJECTAsQueryable()是 LINQ TO SQL
  22. ) AsEnumerable将一个序列向上转换为一个IEnumerable, 强制将Enumerable类下面的查询操作符绑定到后续的子查询当中。AsQueryable将一个序列向下转换为一个IQueryable, 它生成了一个本地查询的IQueryable包装。
  23. ) AsEnumerable()延迟执行,不会立即执行。当你调用.AsEnumerable()的时候,实际上什么都没有发生。当真正使用对象的时候(例如调用:First, Single, ToList....的时候)才执行。
  24. ) .ToList()立即执行

Where与Select的同时使用,取list中的id列数据,并按逗号分隔成字符串。

  1. string[] id = list.Where(a => !string.IsNullOrEmpty(a.user_type)).Select(a => a.id).ToArray();
  2. //ids="1,2,3,4,5,6,7";
  3. string ids = string.Join(",", id);

List集合实战总结的更多相关文章

  1. 高可用Redis(四):列表,集合与有序集合

    1.列表类型 1.1 列表数据结构 左边为key,是字符串类型 右边为value,是一个有序的队列,与python的列表结构相同 可以在Redis中对列表的value进行如下操作 从左边添加元素 从右 ...

  2. 第一章:AI人工智能 の 数据预处理编程实战 Numpy, Pandas, Matplotlib, Scikit-Learn

    本课主题 数据中 Independent 变量和 Dependent 变量 Python 数据预处理的三大神器:Numpy.Pandas.Matplotlib Scikit-Learn 的机器学习实战 ...

  3. 如何自学 Java 开发

    如何自学 Java 开发? 568赞同反对,不会显示你的姓名 李艾米IT路上学习 568 人赞同 Java Web前端技术 HTML 入门视频课程 1 HTML 简介 2 HTML基本结构[ 3 HT ...

  4. 【转】如何使用MAT分析内存泄漏

    原文链接:http://www.lightskystreet.com/2015/09/01/mat_usage/ MAT - Memory Analyzer Tool 使用进阶 Sep 1, 2015 ...

  5. DOM4J对于XML的用法

    一.基本使用方式     语法     1.获取根元素 Element root = document.getRootElement();     2.获取某个元素下的子元素 Element db_e ...

  6. Autofac依赖注入

    简介 Autofac 是一款超赞的.NET IoC 容器 . 它管理类之间的依赖关系, 从而使 应用在规模及复杂性增长的情况下依然可以轻易地修改 .它的实现方式是将常规的.net类当做 组件 处理. ...

  7. 【ASP.NET实战教程】ASP.NET实战教程大集合,各种项目实战集合

    [ASP.NET实战教程]ASP.NET实战教程大集合,各种项目实战集合,希望大家可以好好学习教程中,有的比较老了,但是一直很经典!!!!论坛中很多小伙伴说.net没有实战教程学习,所以小编连夜搜集整 ...

  8. 8-Python3从入门到实战—基础之数据类型(集合-Sets)

    Python从入门到实战系列--目录 集合的定义 集合(set)和字典类似,也是一组key的集合,但不存储value:由于key不能重复,所以,在set中,没有重复的key. 创建一个set,需要提供 ...

  9. Scala实战高手****第6课 :零基础实战Scala集合操作及Spark源码解析

    本课内容1.Spark中Scala集合操作鉴赏2.Scala集合操作实战 --------------------------------------------------------------- ...

随机推荐

  1. 根据硬件配置后mapred-site.xml和yarn-site.xml

    机器总共16G内存,sqoop导入数据时大约需要2G左右 mapred-site.xml <configuration> <property> <name>mapr ...

  2. 【转载】s3c2440裸机开发调试环境(MDK4.6,Jlink v8,mini2440)

    用于arm裸机程序开发的IDE基本有 以下3个:MDK,IAR,还有ADS.具体它们的具体情况在这里我就不多说了,百度一下就明白了.由于之前开发c51,stm32时候都使用了MDK开发环境,而且MDK ...

  3. Docker学习总结之docker介绍

    About Docker 以下均翻译自Docker官方文档 ,转载请注明:Vikings翻译 Develop, Ship and Run Any Application, Anywhere Docke ...

  4. 解决linux中Kipmi0进程对CPU使用率很高问题

    kipmi is supposed to run with low priority. When you say it consumes 70-90% of the CPUs, is that con ...

  5. html实体字符

    在html中,某些字符时预留的,如小于号(<).大于号(>),浏览器会认为它们是标签:有些字符无法用键盘输入.如果需要正确的显示它们,就需要在html源码中使用字符实体. 字符实体有实体名 ...

  6. Java基础类库

    1 main方法      运行java程序的参数:   下面详细讲解main 方法为什么采用这个方法签名 1.public 修饰符:Java类由jvm调用,为了让jvm可以自由调用这个main()方 ...

  7. 【MySQL】Event事件与游标

    MySQL的事件就像Linux系统上的定时任务,按照设置的时间或者间隔时间执行设置好的任务. 如果用SQLyog一类的写存储过程.触发器或者事件会省事一些,例如SQLyog就会生成一个大致的模板: D ...

  8. libpcap报文解析: ipv4、ipv6 @ 2014.7.2

    #include <string.h> #include <stdlib.h> #include <pcap.h> #include <stdio.h> ...

  9. DELL服务器SAS 5 I_R 完全配置手册

    http://wenku.baidu.com/view/f258a36eb84ae45c3b358c55.html?re=view

  10. leetcode 6

    题目描述: 该开始就输在了理解题意上.. 没搞懂zigzag是什么意思. 查了一些解释终于明白要干什么了.     将一个字符串按照Z字形排列(侧着看):再把结果按行输出. 刚开始的想法是讲字符串按照 ...