gpt4 book ai didi

c# - 抛出异常与检查 null,以获取 null 参数

转载 作者:太空狗 更新时间:2023-10-29 22:10:04 25 4
gpt4 key购买 nike

如果参数为空,哪些因素决定抛出异常(例如 if (a is null) throw new ArgumentNullException() ),而不是事先检查参数是否为空。

我不明白为什么应该抛出异常而不是首先检查 null?抛出异常方法有什么好处?

这是针对 C#/.NET 的

谢谢

最佳答案

通常,当参数传递给值为 null 但“绝不”应该为 null 时,您会抛出 ArgumentNullException。它是用于处理空值的特定 ArgumentException。

通常,如果您知道您将获得 null 值作为 args,您会检查 null 并相应地计划您的方法的其余部分 - 如果不存在记录,通常会创建记录,或者执行与将要执行的不同的子例程如果存在有效参数,我们就会运行。在这种情况下,我通常不使用 ArgumentNullException,因为我计划将 null 作为有效输入。

我只在我确定某些东西到达那里时不应该为 null 时才使用 ArgumentNullException,并且我想记下定义为“无效”的参数。

关于c# - 抛出异常与检查 null,以获取 null 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2527002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com