其实很简单,你需要循环的是一个 集合
而其中的元素就是你集合中的类型
string []a
foreach(string s in a) //遍历了 string 数组,那么其中的单个类型就是string
dataset ds //遍历了 dataset数组,那么其中的单个类型就是ds中的每一行
foreach(DataRow dr in ds.tables[0].rows)
List
foreach(int i in b)
List
foreach(Users user in userlists)
其实类型都是 你这个集合元素的类型
这个类型是自己定义的,但是,这个类型得符合你迭代器真正的类型,否则就会报错。比如你是一个A类型的数组,那么迭代变量的类型就必须得是A或者A的父类
不用管它是什么类型,只是实现了IEnumerable接口,或实现了getEnumerator方法的,都可以迭代