C# - ?? 空合并运算符->合并是什么意思?

我很容易撒谎,说英语是我的第二语言,但事实是我只是不知道“推销”是什么意思。 我知道??在C#中可以做什么,但是这个名称对我来说没有意义。

我查了一下这个词,我知道它是“加入”的同义词。 “空连接运算符”仍然没有意义。

有人可以启发我吗?

7个解决方案
34 votes

我很容易撒谎,说英语是我的第二语言。但是事实是我只是不知道“合作”是什么意思。 我知道吗?? 在C#中为“确实”,但是这个名称对我来说没有意义。

我查了一下这个词,我知道它是“加入”的同义词。

我要说的“凝聚”的更准确描述是“从不同的元素组成一件事”。 发生??运算符的“合并”是因为始终从两个值之一解析单个值。 第一个非空值是结果。

John Feminella answered 2020-08-05T17:52:05Z
18 votes

合并是指您拥有多个项目,然后最终得到一个项目,即将这些项目结合在一起或从组中选择一个项目。 在??的情况下 运算符,您正在选择值对中的第一个非空值。

Mark Cidade answered 2020-08-05T17:52:26Z
8 votes

以下是coalesce的其他一些定义,可能有助于理解。从“答案”中可以看出,它意味着“共同成长;融合”或“聚在一起形成一个整体”。 换句话说,取一个项目序列并从中选出一个。 因此,考虑到此讨论中的null意味着“空”,将null与非空合并会为您提供非空。

Erich Mirabal answered 2020-08-05T17:52:46Z
5 votes

含义取第一个非空值。

p.campbell answered 2020-08-05T17:53:07Z
2 votes

[HTTP://呜呜呜.Merriam-Webster.com/dictionary/coalesce]

我认为最好的定义是“为共同的目标团结”。 因此,从根本上将所有要素组合在一起以获得最佳效果。 用编程的术语来说,获得更多的是最好的东西。

Robin Day answered 2020-08-05T17:53:31Z
1 votes

您可以从这个youtube视频开始[http://www.youtube.com/watch?v=YJGGmTNHPeo]

如果您看到合并的英文含义,那就说“巩固在一起”。 合并运算符从链返回第一个NON-NULL值。

例如,下面是一个简单的合并代码,它链接了四个字符串。因此,如果“ str1”为空,则将尝试“ str2”,如果“ str2”为空,则将尝试“ str3”,依此类推,直到找到包含非字符串的字符串。 -null值。

string final =str1 ??  str2 ?? str3 ??
Shivprasad Koirala answered 2020-08-05T17:54:01Z
0 votes

合并词源自拉丁语,意思是“联合”。特别是它在物理化学中表示一种现象,其中分散在另一种不混溶的液体中的小液滴往往会与较大的液滴结合,形成较大的聚集体。 这就是所谓的“凝聚”。

在C#上下文中,为了扩展,由于null coalescing operator,此“连接”发生在变量之间,但是结果值取决于以下事实:第一个操作数是否为null,如果为null,则返回值将为第二个值 操作数。

Ciro Corvino answered 2020-08-05T17:54:26Z
translate from https://stackoverflow.com:/questions/770186/null-coalescing-operator-what-does-coalescing-mean