出错原因是使用了RemoveAt()函数移除了数据中的某一个数,导致数据发生了错位(参考链接一) 解决方案: 第一种解决方法:使用for循环 第二种解决方法:调用ToArray()方法,然后再进行foreach循环 参考链接: 链接一:[C#]集合已修改;可能无法执行枚举操作 - wolfy - 博客园 (cnblogs.com) 链接二:C# 集合已修改;可能无法执行枚举操作 - BigBosscyb - 博客园 (cnblogs.com)