集合已修改;可能无法执行枚举操作
摘要:foreach是取只读的,在取的时候数据不能变(包括修改,删除,添加等)。要避免这个问题,就应该使用for循环。以前没有考虑过对collection类型对象操作时for 和foreach的区别,总感觉foreach更方便一些。今天写了个foreach循环来遍历一个list,之后在foreach体内又对其添加,表面上逻辑和写法看着没错,但在运行时出现异常:查询集合已修改;可能无法执行枚举操作。查了一下,这个是使用foreach的典型的问题。附错误demo代码: try { List<string> lsts = new List<string>...
阅读全文
posted @ 2012-08-08 12:44
浙公网安备 33010602011771号