如果值小于零,则将可空 int 设置为零

Dii*_*iin 2 c#

使用 c# 我想知道是否有办法将 int 转换为 null 或小于 0 时返回 0

  number = ((int?) nullableNum) ?? 0
Run Code Online (Sandbox Code Playgroud)

如果为空,这将返回 0 但我想要一种如果小于 0 则返回 0 的方法

Far*_*yev 5

您可以Math.Max为此目的使用,这将使代码更具可读性:

var number = Math.Max(0, nullableNum ?? 0)
Run Code Online (Sandbox Code Playgroud)

甚至更好地使用GetValueOrDefault而不是空合并。它检索当前Nullable<T> 对象的值,或底层类型的默认值,即 0 表示Nullable‹int›

var number = Math.Max(0, nullableNum.GetValueOrDefault());
Run Code Online (Sandbox Code Playgroud)