1、foreach遍历列表或数组时,如果list或数组为null,会报错,如下图:

  2、不知道微软封装foreach的为什么不先检查要遍历的对象是否为null,这样导致,我们在写代码时,遍历列表时要先判断列表是否为null,如下图:

  3、为了简化这一判断是否null的过程,我写了一个扩展方法,因为列表和数组都继承IEnumerable接口,所以该扩展方法扩展在IEnumerable类型上,为了通用,将这个方法写成了个泛型方法,如下图:

  4、这样在遍历列表的地方不要先判断列表或数组是否为null了,直接用这个扩展方法即可,如下图:

  5、数组也可以哟,如下图:

  6、总结
  本人技术有限,实现这个简单的扩展方法,希望对大家能有所帮助,能 推荐 的话更好了,谢谢。