class Program
{
static void Main(string[] args)
{
/*
* List遍历删除 或取指定的前N项
*/
List<PerSon> listPer = CreateListPer(); // 1、输出项
Console.WriteLine("输出listPer项");
foreach (PerSon per in listPer)
{
Console.WriteLine("Id:" + per.Id + " Name:" + per.name);
} //2、删除15条之后的数据
//遍历删除索引大于50的项
//将listPer的项复制到listPerTemp里面 如果直接用“=”的话,listPerTemp删除索引大于15的项,listPer大于15的项也会删掉
List<PerSon> listPerTemp = new List<PerSon>(listPer.ToArray());
//这将复制listPer中的所有项目到listPerTemp
//listPer.ForEach(i => listPerTemp.Add(i));
listPer.ForEach(i => listPerTemp.Add(i));
for (int i = listPerTemp.Count - ; i >= ; i--)
{
if (i >= )
{
listPerTemp.RemoveAt(i);
}
}
Console.Write("\n");
// 3、输出项
Console.WriteLine("输出listPerTemp项");
foreach (PerSon per in listPerTemp)
{
Console.WriteLine("Id:" + per.Id + " Name:" + per.name);
} //
Console.Write("\n");
Console.WriteLine("输出listPer项");
foreach (PerSon per in listPer)
{
Console.WriteLine("Id:" + per.Id + " Name:" + per.name);
} Console.Write("\n");
//除了用移除的方法获取索引小于15的项,还可以用.take(15);
var result = from r in listPer
select r; result = result.Take();
foreach (var c in result)
{
Console.WriteLine("Id:" + c.Id + " Name:" + c.name);
} Console.Write("\n");
//或者直接take
listPer = listPer.Take().ToList();
foreach (PerSon per in listPer)
{
Console.WriteLine("Id:" + per.Id + " Name:" + per.name);
}
Console.ReadKey();
} private static List<PerSon> CreateListPer()
{
List<PerSon> listper = new List<PerSon>();
PerSon per = new PerSon();
for (int i = ; i <= ; i++)
{
per = new PerSon();
per.Id = i;
per.name = "N-" + i;
listper.Add(per);
} return listper;
}
} public class PerSon
{
/// <summary>
/// 编号
/// </summary>
public int Id { get; set; } /// <summary>
/// 名称
/// </summary>
public string name { get; set; }
}

List遍历删除 或取指定的前N项的更多相关文章

  1. Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器操作系统:CentOSIP:192.168.0.198端口:1521SID:orclOracle数据库版本:Oracle11gR2 具体操作: 1.root用户登录服务 ...

  2. Debian下自动备份文件并上传到远程FTP服务器且删除指定日期前的备份Shell脚本

    说明:  1.备份目录/home/osyunwei下面所有的文件到/home/osyunweibak里面,并且保存为osyunwei20120701.tar.gz的压缩文件格式(2012_07_01是 ...

  3. Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录

    此为在网络上找来的,觉得很好! 实现目的: 对Mongodb数据库日志按天保存,并且只保留最近7天的日志记录. 具体操作: 使用Mongodb数据库自带的命令来切割日志 ps -def | grep ...

  4. java集合遍历删除指定元素异常分析总结

    在使用集合的过程中,我们经常会有遍历集合元素,删除指定的元素的需求,而对于这种需求我们往往使用会犯些小错误,导致程序抛异常或者与预期结果不对,本人很早之前就遇到过这个坑,当时没注意总结,结果前段时间又 ...

  5. Linux下自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用 ...

  6. CentOS Linux自动备份MySQL数据库到远程FTP服务器并删除指定日期前的备份Shell脚本

    说明: 我这里要把MySQL数据库存放目录/var/lib/mysql下面的pw85数据库备份到/home/mysql_data里面,并且保存为mysqldata_bak_2011_11_03.tar ...

  7. Mongodb自动备份数据库并删除指定天数前的备份

    1.创建Mongodb数据库备份目录 mkdir -p /home/backup/mongod_bak/mongod_bak_now mkdir -p /home/backup/mongod_bak/ ...

  8. MySQL定时任务event,储存过程(定时删除指定时间前90天指定表的数据)

    MySQL定时任务event,储存过程(定时删除指定时间前90天指定表的数据) 分类: MySql5.x2014-06-23 15:16 1266人阅读 评论(0) 收藏 举报 mysql数据库 &l ...

  9. STL容器的遍历删除

    STL容器的遍历删除 今天在对截包程序的HashTable中加入计时机制时,碰到这个问题.对hash_map中的每个项加入时间后,用查询函数遍历hash_map,以删除掉那些在表存留时间比某个阈值长的 ...

随机推荐

  1. source insight 添加自定义macro

    打开C:\Documents and Settings\xxxx\My Documents\Source Insight\Projects\Base文件夹下的em文件,可以看到都是由macro定义的一 ...

  2. gcc for Windows 开发环境介绍

    导读: 在Windows操作系统下的gcc 第一节 GCC家族概览 GCC是一个原本用于Unix-like系统下编程的编译器. 只是,如今GCC也有了很多Win32下的移植版本号.所以,或许对于很多W ...

  3. ACCESS通过一个连接写入的数据,还有一个连接却读取不出来

    近期在用c#实现一个数据导入的功能,将一个ACCESS数据库中的数据导入到还有一个ACCESS的数据库中,然后显示出来,可是导入成功了.却显示不出来. 经过研究认为应该是缓存的原因,因为我写入数据和读 ...

  4. (翻译)2016美国数学建模MCM E题(环境)翻译:我们朝向一个干旱的星球?

    PROBLEM E: Are we heading towards a thirsty planet? Will the world run out of clean water? According ...

  5. Visual Studio for Mac

    Visual Studio for Mac 初体验   你喜爱的 IDE,现在可用于 Mac 来自:https://www.visualstudio.com/zh-hans/vs/visual-stu ...

  6. sublime 内容高级搜索

    在发展中经常需要搜索内表面的文件.更好地想找到$video->getTitle() 在该文件中使用的表面.好了,这个时候就需要使用高级搜索功能,的操作,如以下: ctrl+shif+f纽带 例如 ...

  7. IComparable与排序

    IComparable:一种特定于类型的通用比较方法,值类型或类通过实现此方法对特认定进行排序. IComparable的作用是提供了一种比较两个对象的特定类型的方法.这是必需的如果您想要为对象提供任 ...

  8. JIL 编译与 AOT 编译

    JIT:Just-in-time compilation,即时编译:AOT:Ahead-of-time compilation,事前编译. JVM即时编译(JIT) 1. 动态编译与静态编译 动态编译 ...

  9. wpf mvvm datagrid数据过滤

    原文:wpf mvvm datagrid数据过滤 datagrid数据过滤,你可以通过设置RowStyle属性,通过将Visibility绑定到ViewModel层的属性来控制是否可见,比如:   & ...

  10. iOS 注册或登录页面(UILable,UITextField,UIButton)

    注册或登录页面 例如下面的附图 1,为了在这里展示UITextField文本框关联的键盘设置.在这里,"password"和"判定password"关联键盘被设 ...