List<> 集合 删除指定行
不多说,直接上代码
public class Name
{
public string NameInfo { get; set; }
}
删除值为Name2的行
static void Main(string[] args)
{
string[] s = new string[];
List<Name> nList = new List<Name>();
for (int i = ; i < ; i++)
{
Name n = new Name()
{
NameInfo = "Name" + i
}; nList.Add(n);
} Console.WriteLine();
var someOne = "Name2"; for (int i = ; i < nList.Count; i++)
{
if (someOne == nList[i].NameInfo)
{
nList.RemoveAt(i);
//输出下一个参数
Console.WriteLine(nList[++i].NameInfo);
}
}
for (int i =; i<nList.Count; i++)
{
Console.Write(nList[i].NameInfo + "\t");
}
Console.ReadKey();
}
仔细的同学会发现一个错误:Name2在nList<Name>是第3个即nList[2],删除之后下一个参数应该是nList[3] Name3,但是最后程序结果是Name4。
原因:当前元素被删除之后,后面的元素会自动前移一位.也就是删除Name2后nList[2]就变成Name3。
改进:逆反循环,for循环从后开始往前循环
for (int i = nList.Count - ; i >= ; i--)
{
if (someOne == nList[i].NameInfo)
{
nList.RemoveAt(i);
//输出下一个参数
Console.WriteLine(nList[--i].NameInfo);
}
}
List<> 集合 删除指定行的更多相关文章
- IOS学习之路六(UITableView滑动删除指定行)
滑动删除指定行代码如下: Controller.h文件 #import <UIKit/UIKit.h> @interface TableViewController : UIViewCon ...
- sed 删除最后几行 和删除指定行 awk使用
sed 删除最后几行 和删除指定行 转载原文链接:http://blog.51cto.com/lspgyy/1305489 sed 想删除文件中的指定行,是可以用行号指定也可以用RE来匹配的. 删 ...
- Pandas常用操作 - 删除指定行/指定列
1. 删除指定行 new_df = df.drop(index='行索引') new_df = df.drop('行索引', axis='index') new_df = df.drop('行索引', ...
- REDHAT一总复习1 vim编辑器的使用 删除所有者列 删除指定行
将文件/home/student/vimfile.txt 复制到server 上的/home/student/longlisting.txt . 根据下列要求,使用vim编辑器更改 /home/stu ...
- Linux sed命令删除指定行
一.删除包含匹配字符串的行## 删除包含baidu.com的所有行sed -i '/baidu.com/d' domain.file 二.删除匹配行及后所有行## 删除匹配20160229的行及后面所 ...
- linux删除指定行&删除行首空格&替换字符
打印并删除2~1000行 nl /etc/passwd | sed '2,1000d' |more 删除行首空格 sed -i 's/^[][ ]*//g' file 替换分隔符 说明:文件中数据是由 ...
- WPS:Excel删除指定行以后的所有行
首先定位到你的1000行,然后选中第1000行按住Shift,再同时按住Ctrl加向下的方向键,最后删除即可了.
- ASP.Net Web中Repeater怎么删除指定行
使用OnItemCommand事件 首先附上相关的代码 <asp:Repeater ID="Repeater1" runat="server" OnIte ...
- sed 删除指定行
参考:http://blog.sina.com.cn/s/blog_4ba5b45e0102e7l2.html
随机推荐
- float(double)快速转换int的方法
自己写一个软件渲染器的时候,无意中发现float转换int非常耗时,于是查阅文章,这才有了这个命题,以前不清楚还有这么个机制.网上看了很多文章,搜索到了一个数字6755399441055744,这个是 ...
- BZOJ2159 Crash的文明世界
Description 传送门 给你一个n个点的树,边权为1. 对于每个点u, 求:\(\sum_{i = 1}^{n} distance(u, i)^{k}\) $ n \leq 50000, k ...
- Object C学习笔记18-SEL,@ selector,Class,@class--转
一. SEL 类型 在上一篇介绍了几个方法,都只是介绍了其使用方式但是没有具体介绍参数: - (id)performSelector:(SEL)aSelector; - (id)performSele ...
- selenium 延迟等待的三种方式
1.最直接普通的方式:这个是设置固定的等待时间 Thread.sleep(1000); 2.显示等待方式(Explicit Wait):就是明确的要等待的元素在规定的时间之内都没找到,那么就 ...
- hbase源码分析:ERROR: Table already exists问题诊断
问题描述: 重新安装了测试环境的hadoop,所以之前hbase所建的表数据都丢失了,但是zookeeper没有动.在hbase shell中list的时候,看不到之前建的表,但是create tes ...
- [译]curl_multi_add_handle
NAMEcurl_multi_add_handle - add an easy handle to a multi session添加easy handle到multi session中 SYNOPS ...
- TC 609DIV2(950)
Problem Statement Vocaloids Gumi, Ia, and Mayu love singing. They decided to make an album comp ...
- SQL常用自定义函数
1.字符串转Table(Func_SplitToTable) CREATE FUNCTION [dbo].[Func_SplitToTable] ( @SplitString ...
- P1478 陶陶摘苹果(升级版)
题目描述 又是一年秋季时,陶陶家的苹果树结了n个果子.陶陶又跑去摘苹果,这次她有一个a公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与NOIp2005普及组第一题不同的是:陶陶之前搬凳子,力 ...
- Android习惯--Activity启动方法
public void Text extends Activity{ public void static actionStart(Context context, int i, String str ...