大概是这样的哈:首先c#数组不是动态的,它的长度在定义时已经设定,是个固定的.所以在往一个数组中增加或要删除一个元素时,处理起来很麻烦.所以我们引入了非泛型集合ArraryList类 它可以动态的增加 删除元素 因为ArraryList是object类型,每次在增加删除或对数进行操作的时候,都要进行类型转换,非常耗用内存,所以我们又引入了泛型集合即List<> 它存储的类型是可以自己设置的,在<>里写上你要处理的数据类型,这样效率很高.
那foreach一般在集合中用到,它不可以控制循环的进度,而且是只读的,不可以在内部对元素进行修改,而for则可以控制进度也可以修改元素 |