for 的一些没注意的地方

< ![CDATA[

以前在群里面看到的,觉得挺好的。贴出来

 

    class Program
    {
        static void Main(string[] args)
        {
            //List<int> items = new List<int>();
 
            //for (int i = 0; i < 100; i++)
            //{
            //    items.Add(i);
            //}
 
            //for (int i = 0; i < items.Count; i++)
            //{
            //    items.RemoveAt(i);
            //}
 
            //Console.WriteLine(items.Count);
            //Console.ReadKey();
 
 
 
            //List<int> items = new List<int>();
 
            //for (int i = 0; i < 100; i++)
            //{
            //    items.Add(i);
            //}
 
            //int itemCount = items.Count;
 
            //for (int i = 0; i < itemCount; i++)
            //{
            //    items.RemoveAt(i);
            //}
 
            //Console.WriteLine(items.Count);
            //Console.ReadKey();
 
 
 
            //var items = new List<int>();
 
            //for (var i = 0; i < 100; i++)
            //{
            //    items.Add(i);
            //}
 
            //items.RemoveAll(item => item > 50);
 
            //Console.WriteLine(items.Count);
            //Console.ReadKey();
 
 
            //var items = new List<int>();
 
            //for (var i = 0; i < 100; i++)
            //{
            //    items.Add(i);
            //}
 
            //foreach (var item in items)
            //{
            //    items.Remove(item);
            //}
 
            //Console.WriteLine(items.Count);
            //Console.ReadKey();
 
 
 
            var items = new List<int>();
 
 
            for (var i = 0; i < 100; i++) items.Add(i);
 
            var items2 = items;
            foreach (var item in items2)
            {
                items.Remove(item);
            }
 
            Console.WriteLine(items.Count);
            Console.WriteLine(items2.Count);
            Console.ReadKey();
        }
    }
]]>

你可能感兴趣的:(for)