我可以将可为空的变量设为负数吗?

本文关键字:我可以 变量 | 更新日期: 2023-09-27 18:34:55

我只想知道以下语法在 c# 中是否合法:

decimal price = -someVariable ?? 0M;

基本上,我可以将可空变量设置为负数,不知道它是否为空吗?

我可以将可为空的变量设为负数吗?

这可能不是因为负号会附加到可能为 null someVariable,不过您可以将 null 合并包装在括号中。

decimal price = -(someVariable ?? 0M);

是的,这是合法的,如果 someVariable 为 null,-someVariable 也将为 null。但为了清楚起见,您可能希望将其重写为以下内容:

decimal price = -(someVariable ?? 0M);

另一个例子

decimal? a = null;
decimal b = 5;
decimal? c = a + b; // c == null