博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
遍历ArrayList易犯错误
阅读量:6962 次
发布时间:2019-06-27

本文共 453 字,大约阅读时间需要 1 分钟。

场景:


将ArrayList中符合条件的记录删掉,第一时间写出的程序如下:


None.gif            
foreach (
string aStr 
in  aList)
ExpandedBlockStart.gif             {
InBlock.gif                
if (aStr.Equals(textBox1.Text))
ExpandedSubBlockStart.gif                {
InBlock.gif                    aList.Remove(aStr);
ExpandedSubBlockEnd.gif                }
ExpandedBlockEnd.gif            }

似乎没有错误,编译也通过的,但运行时如果真的遇到符合条件的数据,则会抛出错误:


arrayList1.JPG


简单的解决办法是如何呢?这时用Clone方法最好不过了,用如下代码:


None.gif            ArrayList bList = (ArrayList)aList.Clone();
None.gif            
foreach (
string aStr 
in  bList)
ExpandedBlockStart.gif             {
InBlock.gif                
if (aStr.Equals(textBox1.Text))
ExpandedSubBlockStart.gif                {
InBlock.gif                    aList.Remove(aStr);
ExpandedSubBlockEnd.gif                }
ExpandedBlockEnd.gif            }
None.gif

似乎集合类型都会有这样的问题的。

本文转自风前絮~~博客园博客,原文链接:http://www.cnblogs.com/windsails/archive/2004/09/08/41039.html,如需转载请自行联系原作者

你可能感兴趣的文章
如何在Root的手机上开启ViewServer,使得HierachyViewer能够连接
查看>>
mysql 导出数据
查看>>
2014-10-10 LAMP第一部分-环境搭建
查看>>
iPhone 4S
查看>>
Attribute listkey invalid for tag checkboxlist according to TLD
查看>>
IOS 的UINavigatonBar控件的titleTextAttributes的字典类型的属性
查看>>
项目实现
查看>>
查看linux系统版本是32位的还是64位的
查看>>
The Little Prince-12/09
查看>>
ios数据存储4种
查看>>
统计字符串在文件中出现的次数
查看>>
QtCreator源码分析(一)——QtCreator源码简介
查看>>
Java基础学习总结(9)——this关键字
查看>>
Enum简单例子DropdownList
查看>>
c#导出bugfree3.0的数据到禅道
查看>>
SpringMVC权限管理
查看>>
Java Web学习总结(18)——JSP标签
查看>>
成员设计准则
查看>>
我的友情链接
查看>>
大数据处理
查看>>