我们所说的是什么意思?或者 ???

发布于 2024-10-05 04:18:23 字数 45 浏览 5 评论 0原文

有人告诉我它们的区别以及我们为什么使用它们的例子。我知道它是 NULL 值。

Someone tell me the difference and example why we use these. I know its for NULL values.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

两仪 2024-10-12 04:18:23

<代码>x ? a : b 表示 if (x == true) then a else b

x ?? y 表示 if (x != null) then x else y

但有一点不同,因为两者都是表达式而不是像 IF 这样的语句。

这允许你写 var z = x ? a : b; 将声明和赋值合并在一行中,而不是多行替代方案:

type z;
if (x == true)
  z = a;
else
  z = b;

Type?Nullable 的简写

x ? a : b means if (x == true) then a else b

x ?? y means if (x != null) then x else y

but with a twist since both are expressions rather than statements like the IF.

That allow you to write var z = x ? a : b; to combine declaration and assignment in one line instead of the multi-line alternative:

type z;
if (x == true)
  z = a;
else
  z = b;

Type? is a shorthand for Nullable<Type>

北渚 2024-10-12 04:18:23

?是一个三元运算符,在C#中正式命名为条件运算符。

??是 null 合并运算符 条件

运算符对于简短的 if/else 语句很有用

null 合并运算符对于返回一个不为 null 的值很有用,否则返回另一个值(运算符右侧的值)

? is a ternary operator, officially named the conditional operator in C#.

?? is the null coalescing operator

The conditional operator is useful for short, concise if/else statements

The null coalescing operator is useful for returning one value if it is not null, otherwise returning another value (the value on the right side of the operator)

东京女 2024-10-12 04:18:23

有两个不同的运算符使用“?”

  • 条件运算符:
    条件?然后:其他
    if condition is true then 'then part' else 'else part',此运算符类似于 if-else。

  • 空合并运算符:
    这 ??运算符称为空合并运算符,用于为可为空值类型和引用类型定义默认值。如果左侧操作数不为空,则返回左侧操作数;否则返回正确的操作数。
    // y = x,除非 x 为空,在这种情况下 y = -1。
    整数 y = x ?? -1;

there are two different operator which use '?'

  • Conditional Operator:
    condition?then:else
    if condition is true then 'then part' else 'else part', this operator is like if-else.

  • null-coalescing operator:
    The ?? operator is called the null-coalescing operator and is used to define a default value for a nullable value types as well as reference types. It returns the left-hand operand if it is not null; otherwise it returns the right operand.
    // y = x, unless x is null, in which case y = -1.
    int y = x ?? -1;

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文