首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

请问在循环中如何删除满足条件的行

2013-06-25 
请教在循环中怎么删除满足条件的行?我需要删除list中满足条件的行,如果在循环中直接删除,第二次循环时会报

请教在循环中怎么删除满足条件的行?
我需要删除list中满足条件的行,如果在循环中直接删除,第二次循环时会报错?要怎么修改呢?




var
 IPList:TList;
 i:Integer;
begin
  for i:=0 to IPList.Count-1 do
begin

           if '192.168.1.10'=IPList[i].Value then
           begin

             If IPList[i]<>nil  then
             begin
               TDSTCPChannel(IPList[i]).Close;
               IPList.Delete(i) ;     //删除此行,第二次循环就会报错
             end;

   End;

           continue;
         End;
End;

[解决办法]
倒着来

for i:= iplist.count-1 downto 0

热点排行