c# - 我应该检查传递的 list<T> 是否为 null

标签 c# list null generic-list

扩展方法需要一个开放的泛型 IEnumerable。

我是否应该在方法内部检查列表是否为空。

我认为列表绝不能为空,但计数 == 0。

遇到这种情况怎么办?

更新:

我忘了提到该方法是一个递归方法,其中当然会递归调用/传递列表。

最佳答案

视情况而定。

如果列表为 null 是您无法处理的,那么对其进行测试并引发 ArgumentNullException:

if (list == null)
{
    throw new ArgumentNullException("some suitable message");
}

如果列表为 null 等同于现有但没有元素的列表,则允许:

if (list == null || list.Count() == 0)
{
    .....
}

关于c# - 我应该检查传递的 list<T> 是否为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9565963/

相关文章:

c# - 对传递 Expression 与 Func 参数感到困惑

python - 对多维列表的特定元素使用拆分

string - 为什么我的 Groovy println 在正确的语句后总是返回 null?

javascript - 在这个 switch 语句中执行 `return ' ' ;` or ` return null;` 是否更有意义?

c# - 将 SYSTEMTIME( native C++)转换为日期时间 (C#)

c# - 如何比较 asp.net 网站中输入字符串的最后 3 个字符

c# - C# 中的 CRC32 失败

Python:将字典列表转换为 json

C# 通用列表转换为实现 List<T> 的类

javascript - 如何从字符串中删除文本?