`

LIST集合已修改;可能无法执行枚举操作。

阅读更多
foreach是取只读的,在取的时候数据不 能变(包括修改,删除,添加等),因为在取之前foreach的集合已经定好了,新增、删除、修改只能使用for,不能使用foreach
private BLL.UserInfo usbLL = new BLL.UserInfo();
        protected void Page_Load(object sender, EventArgs e)
        { 
            List<Model.UserInfo> us = new List<Model.UserInfo>();
           
            us=usbLL.getUserInfo("");
            foreach (Model.UserInfo u in us)
            {
                //删除数据
                if (u.UserId == "管理员")
                {
                    us.Remove(u);
                }
            }

            foreach (Model.UserInfo u in us)
            {
                Console.WriteLine(u);
            }
        }
分享到:
评论

相关推荐

    C#在foreach遍历删除集合中元素的三种实现方法

    可能无法执行枚举操作。 方法一:采用for循环,并且从尾到头遍历 如果从头到尾正序遍历删除的话,有些符合删除条件的元素会成为漏网之鱼; 正序删除举例: List&lt;string&gt; tempList = new List() { "a","b","b...

    c语言中的枚举应用

    此外,如果未来需要修改枚举成员的值或者添加新的成员,只需要在枚举定义处进行修改,而无需遍历整个代码库寻找所有使用该枚举的地方,从而减少了错误的可能性。 ### 总结 枚举类型是C语言中一个强大的特性,它...

    C#集合与字符窜处理C#集合与字符窜处理(源代码)

    在这个压缩包中,我们很可能是得到了一系列关于这两个主题的源代码示例,这些示例可以帮助我们深入理解C#中的集合和字符串操作。 首先,让我们来探讨C#中的集合。C#提供了多种类型的集合,包括数组、列表、队列、栈...

    JAVA集合容器课件

    3. **List接口**:List是Collection的一个子接口,它代表了一个有序的元素序列,支持通过索引来访问和修改元素。List接口的重要实现类有ArrayList和Vector。ArrayList是非同步的,性能较高,适合于在单线程环境中...

    CSharp 4.0 .Net Framework V4.0 List《T》类

    - ForEach(Action):对 List&lt;T&gt; 中的每个元素执行指定的操作。 - GetEnumerator():返回用于遍历 List&lt;T&gt; 的枚举器。 这些方法使得 List&lt;T&gt; 成为 C# 中非常实用的数据结构,能够轻松地进行数据操作,如插入、删除...

    一篇文章带你轻松了解C# Lock关键字

    相信绝大多数.NET玩家和我一样,常常使用Timer这个对象,而在WPF中使用...例如一个List集合,你在一个线程中对它进行了操作,在同步瞬间的另线程中,如果不对它谨慎处理,就会造成 “集合已修改;可能无法执行枚举操

    用Linq从一个集合选取几列得到一个新的集合(可改列名)

    Linq查询是延迟执行的,这意味着实际的数据操作直到枚举新集合时才发生。这有助于优化性能,因为只有在真正需要结果时才会执行查询。 6. **内存效率**: 虽然Linq操作创建的新集合通常是投影(Projection)的结果...

    Hibernate关联关系的CRUD和集合映射(annotation)

    常见的集合类型有`List`、`Set`、`Map`等。通过以下注解可以进行配置: 1. **@ElementCollection**:用于非关联的简单元素集合,如字符串列表或枚举集。 2. **@OneToMany(cascade=CascadeType.ALL, mappedBy=...

    Linq基础学习资料,通俗易懂

    - **ToList 将集合转换为List集合,浅复本**:将集合转换为`List&lt;T&gt;`集合。 - **ToDictionary 将集合转换为, V&gt;集合,浅复本**:将集合转换为字典。 #### 7. Lambda表达式 Lambda表达式是一种简洁的匿名函数,常用于...

    c#技巧大集合,献给大家共享,提高效率哦

    扩展方法使得可以在不修改原有类的情况下为类添加新方法。例如,为`string`类型添加一个检查是否为空的方法:`public static class StringExtensions { public static bool IsNullOrEmpty(this string str) {...} }...

    Java_examples.zip_java examples

    8. **集合框架**:Java集合框架包括List、Set、Map等接口及其实现类,示例会演示如何存储、操作和遍历集合对象。 9. **IO流**:Java的IO流系统用于读写文件和数据传输,示例可能涵盖文件操作、网络通信等内容。 10...

    java.util包总结

    11. EnumSet和EnumMap:针对枚举类型(enum)的高效集合实现,优化了枚举操作。 12. WeakHashMap:键使用弱引用的Map,当键不再被引用时,条目会自动从Map中移除。 13. Timer和TimerTask:定时任务调度,可以安排...

    Intermediate Python-Yasoob, Muhammad; Khalid, Ullah

    本书籍涵盖了Python的多个方面,包括函数参数、调试、生成器、映射、过滤、集合、数据结构、Ternary操作符、装饰器、全局变量、返回值、mutation、slots magic、虚拟环境、集合、枚举等多个领域。 1. 函数参数: ...

    超级有影响力霸气的Java面试题大全文档

     Collection是集合类的上级接口,继承与他的接口主要有Set 和List. Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 13、&和&&的区别。 &是位运算符...

    Java基础精品课23-StreamApi.zip

    Stream不直接修改原始数据源,而是通过一系列操作生成一个新的结果。这种处理方式称为“函数式编程”。 二、Stream的创建 1. 集合转换:从List、Set、Map等集合类中可以直接生成Stream。 2. 生成器:使用Stream接口...

    microsoft.net gotchas

    12. **LINQ的性能**:LINQ提供了简洁的查询语法,但某些操作(如`ToList()`、`Select()`等)会立即执行并生成新集合,可能导致性能损失。根据需求选择延迟执行的查询。 13. **内存泄露**:虽然.NET框架提供了垃圾...

    c#Foreach.rar

    此外,如果在循环中修改集合,可能会导致未定义的行为,除非集合支持并发修改。 在实际开发中,`foreach`循环广泛应用于数据处理、日志记录、单元测试等场景。其简洁的语法和易读性使它成为C#程序员的首选工具之一...

    《Java2核心技术卷II》配套源码

    源码中可能有对这些集合的操作,例如添加、删除、遍历以及使用`Iterator`和`ListIterator`。 5. **反射**:反射是Java的一个强大特性,允许程序在运行时动态访问和修改类的信息。源码可能会使用`Class`对象、`...

    java面试陷阱集合

    6. **Collection 和 Collections**:Collection是所有集合类的父接口,Collections是工具类,提供了一系列静态方法来操作集合。 7. **assert**:assert用于断言,用于在开发阶段检查程序的正确性,生产环境中通常...

    JAVA经典实例100例

    5. **集合框架**:Java集合框架包括接口(如List、Set、Map)和实现类(如ArrayList、LinkedList、HashSet、HashMap),实例会展示如何使用它们来存储和操作对象。 6. **异常处理**:Java的异常处理机制是通过try-...

Global site tag (gtag.js) - Google Analytics