foreach函数的使用限制

来源:百度文库 编辑:神马文学网 时间:2024/10/05 04:58:13

foreach函数的使用是有一些限制的:
foreach语句中有两个限制,第一不能修改枚举成员,其次不要对集合进行删除操作。
而我之前的作法明显违背了这一点,在此文中还提到一点,如果想要执行这种带删除的集合遍历的过程的话,其过程应该是反向的,即
就是对于一个记录集的多条数据删除问题,也是经常出现问题的地方(论坛上经常问类似的问题),由于在一些记录集中进行删除的时候,在删除操作之后相应的索引也发生了变化,这时候的删除要反过来进行删除,大致形式如下。

        // Use "for" to loop an arraylist

        for( int i = arrInt.Count - 1; i >=0; i-- )

        {

            int n = ( int ) arrInt[i];

            if( n == 5 )

                arrInt.RemoveAt( i ); // Remove data here

            Debug.WriteLine( n.ToString() );

        }