首页 > 解决方案 > 检查 System.Collections.IList 的任何项目是否为空

问题描述

我有一个System.Collections.IList(非通用),我想检查列表中是否有任何项目为空。使用 Linq 我会和IEnumerable<T>扩展它看起来像:

bool hasNoNullItems = myList.All(x => x != null);

有什么办法可以做到这一点System.Collections.IList吗?

标签: c#linq

解决方案


您可以使用Cast<T>适用于非通用IEnumerable接口的扩展:

bool hasNullItems = myList.Cast<object>().Any(x => x == null);

请注意,All(x => x != null)如果true没有项目 null。这就是我Any(x => x == null)用来检查是否有任何项目为 null 的原因


推荐阅读