[No000086]C#foreach集合被改变,报错处理方案
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq; namespace ConsoleTest
{ class Program
{
class Test
{
public string Num = "";
} static void Main(string[] args)
{ List<Test> listTest = new List<Test>(); for (int i = ; i < ; i++)
{
listTest.Add(new Test { Num = i.ToString() });
}
int NumCount = ;
//foreach (var list in listTest)
//{
// NumCount++;
// if (listTest.Count < 20)
// {
// listTest.Add(new Test { Num = NumCount.ToString() });
// }
// Console.WriteLine(list.Num);
//}//报错
NumCount = ;
for (int i = ; i < listTest.Count; i++)
{
NumCount++;
if (listTest.Count < )
{
listTest.Add(new Test { Num = NumCount.ToString() });
}
Console.WriteLine(listTest[i].Num);
} Dictionary<string, string> dict = new Dictionary<string, string>();
dict.Add("", "helo1");
dict.Add("", "helo2");
var keysList = new string[dict.Count];
dict.Keys.CopyTo(keysList, );
foreach (var key in keysList)
{
Console.WriteLine("key_ " + key.ToString() + ":" + dict[key]);
dict.Remove(key); // Response.Write("key" + key.ToString() + ":" + dict[key]);
}
Console.WriteLine("AfterRemoved!========================================="); foreach (var dic in dict)
{
Console.WriteLine(dic.Key, dic.Value);
}
Console.WriteLine("dic AfterShow!========================================="); Dictionary<int, string> dict2 = new Dictionary<int, string>();
dict2.Add(, "helo21");
dict2.Add(, "helo22");
var keysList2 = new int[dict2.Count];
dict2.Keys.CopyTo(keysList2, );
foreach (var key2 in keysList2)
{
Console.WriteLine("key_ " + key2.ToString() + ":" + dict2[key2]);
dict.Remove(key2.ToString()); // Response.Write("key" + key.ToString() + ":" + dict[key]);
}
Console.WriteLine("dict2 AfterRemoved!========================================="); foreach (var dic in dict)
{
Console.WriteLine(dic.Key, dic.Value);
} Console.ReadLine(); Console.Read(); }
}
}
[No000086]C#foreach集合被改变,报错处理方案的更多相关文章
- mybatis问题。foreach循环遍历数组报错情况,及其解决方法
根据条件查询数据列表,mybatis查询代码如下 如果只查询属于特定部门拥有的数据权限.这需要用 String[ ] codes保存当前部门及其子部门的部门编码. 所以需要在mybatis中遍历编码数 ...
- java操作数组转list集合删除元素报错ConcurrentModificationException
public static void main(String[] args) { ArrayList<String> list = new ArrayList<String>( ...
- MyEclipse2014web工程项目直接复制不能访问报错处理方案
在学习web servlet项目中,做一个项目时 , 完成到了某一阶段 实现了部分功能,有必要保存这一项目,当复制这个项目之后发现发布会报错或者不能访问. 其实复制项目主要是为了在以后的学习中如果能顺 ...
- 微信开发,对象转换为xml时候引用XStream这个类报错处理方案
报错的信息为:The type org.xmlpull.v1.XmlPullParser cannot be resolved. /** * 扩展XStream 支持CDATA */ privat ...
- Foeach 时修改集合的值报错
就是"集合已修改:可能无法执行枚举操作 foreach" 啥的, 不让我改 百度到Foreach是只读的,只供取值用,无法进行新增,修改,删除(仅引用,实际待验证) 解决办法:将F ...
- node js 调试出现同一个端口启动多次报错处理方案 Error: listen EADDRINUSE
windows 下 1.查询端口占用的进程ID: netstat -aon | findstr "80" 80为端口号, 输出为: TCP 0.0.0.0:3000 ...
- MyBatis批量操作报错:Parameter 'xxxList' not found. Available parameters are [list]
问题背景: 在Dao中使用MyBatis进行查询操作,参数是传的一个List:studentNameList,但是在执行查询的时候报错,具体日志如下: com.chenzhou.base.mybati ...
- vite 动态 import 引入打包报错解决方案
关注公众号: 微信搜索 前端工具人 ; 收货更多的干货 原文链接: 自己掘金文章 https://juejin.cn/post/6951557699079569422/ 关注公众号: 微信搜索 前端工 ...
- day10-连接mysql虚拟机报错
连接mysql时报:message from server: "Host '192.168.76.1' is not allowed to connect to this MySQL ser ...
随机推荐
- Hibernate-chapter two
又见面啦!!!经过上一章的学习,我们大概对Hibernate框架有所了解.接下来进入我们的第二阶段——实战! ======准备数据库====== 这里使用MySQL作为示范. 创建一个名为Hibern ...
- Ant_build.xml的最完整解释
Ant的概念Make命令是一个项目管理工具,而Ant所实现功能与此类似.像make,gnumake和nmake这些编译工具都有一定的缺陷,但是Ant却克服了这些工具的缺陷.最初Ant开发者在开发跨平台 ...
- 更新整理本人所有博文中提供的代码与工具(C++,2014.01)
为了更方便地管理博文中涉及的各种代码与工具资源,现在把这些资源迁移到 Google Code 中,有兴趣者可前往下载. C++ 1.<通用高性能 Windows Socket 组件 HP-Soc ...
- input输入框限制仅能输入数字且规定数字长度(使用与输入手机号)
现在越来越多的账户名使用手机号来登录,为了减少前后端的交互,需要用户在输入时就要进行格式的判断, 目前的常规办法是,在输入完成后进行判断. 下面的方法是在输入时就规定只能输入数字,其他格式的字符是无法 ...
- 走进 .Net 单元测试
走进 .Net 单元测试 Intro "不会写单元测试的程序员不是合格的程序员,不写单元测试的程序员不是优秀程序员." -- 一只想要成为一个优秀程序员的渣逼程序猿. 那么问题来了 ...
- Java语言面向对象的一些基本特点
封装 1. 面向对象语言使用class封装属性和方法. 2. 属性一般要求定义为private,封装保护 继承. 继承的例子随处可见.需要符合is-a关系,父类更加通用,子类更加具体.. 在子类中使用 ...
- MyEclipse使用心得:集成和使用Maven的方法
MyEclipse下载:http://www.myeclipsecn.com/download/ 第一步:下载和安装 1.官网下载Maven:http://maven.apache.org/downl ...
- EF UoC
The Repository Pattern with EF Code First & Dependency Injection in ASP.NET MVC3 Ray_Liang, 5 Ju ...
- IE10 和 Chrome50 对日期 new Date() 支持的区别
IE10 和 Chrome50 对日期 new Date() 支持的区别: new Date('2016-06-18'); // IE10 不通过.Chrome 通过 new Date('2016/0 ...
- [windows]win10家庭版切换到管理员账户
背景:很多时候,在安装或者运行某些程序时会需要到管理员账户运行.而在win10家庭版却没有明显的位置可以让用户简单的进行切换.因此,有了以下的方法. 方法: 1.在搜索框中输入CMD,右键以管理员方式 ...