1、foreach遍历列表或数组时,如果list或数组为null,会报错,如下图: 2、不知道微软封装foreach的为什么不先检查要遍历的对象是否为null,这样导致,我们在写代码时,遍历列表时要先判断列表是否为null,如下图: 3、为了简化这一判断是否null的过程,我写了一个扩展方法,因为列表和数组都继承IEnumerable接口,所以该扩展方法扩展在IEnumerable类型上,为了通用,将这个方法写成了个泛型方法,如下图: 4、这样在遍历列表的地方不要先判断列表或数组是否为null了,直接用这个扩展方法即可,如下图: 5、数组