?? Null Coalescing Operator --> What does coale

2019-01-09 11:45发布

I'm tempted to lie and say that English is my second language, but the truth is that I just have no idea what 'Coalescing' means. I know what ?? 'does' in C#, but the name doesn't make sense to me.

I looked up the word and I understand it to be a synonym for 'join'. 'Null Join Operator' still doesn't make sense.

Can someone enlighten me?

6条回答
beautiful°
2楼-- · 2019-01-09 12:07

Here are some other definitions of coalesce that might help make sense. From Answers, it shows that it means to "grow together; fuse" or "to come together so as to form one whole." In other words, take a sequence of items and make one out of them. So considering that null in this discussion means "empty," coalescing null with a non-empty gives you the non-empty.

查看更多
Rolldiameter
3楼-- · 2019-01-09 12:10

Meaning take the first non-null value.

查看更多
何必那么认真
4楼-- · 2019-01-09 12:13

http://www.merriam-webster.com/dictionary/coalesce

I think the best definition is the "unite for a common end". So basically pulling it all together to get the best. In programming terms it's more getting the first best item.

查看更多
The star\"
5楼-- · 2019-01-09 12:21

I'm tempted to lie and say that English is my second language...but the truth is that I just have no idea what 'Coalescing' means. I know what ?? 'does' in C#, but the name doesn't make sense to me.

I looked up the word and I understand it to be a synonym for 'join'.

I'd say a more accurate description of "coalesce" would be "to form one thing from different elements". The "coalescing" of the ?? operator happens because a single value is always resolved from one of the two values. The first non-null value is the result.

查看更多
淡お忘
6楼-- · 2019-01-09 12:21

You can start from this youtube video http://www.youtube.com/watch?v=YJGGmTNHPeo

If you see the English meaning of coalescing it says “consolidate together”. Coalescing operator returns the first NON-NULL value from a chain.

For example below is a simple coalescing code which chains four strings.So if “str1” is null it will try “str2” , if “str2” is null it will try “str3” and so on until it finds a string with a non-null value.

string final =str1 ??  str2 ?? str3 ??
查看更多
姐就是有狂的资本
7楼-- · 2019-01-09 12:24

Coalescing is when you have more than one item and then you end up with exactly one—either by joining the items together or by choosing a single item from the group. In the case of the ?? operator, you're choosing the first non-null value of the pair of values.

查看更多
登录 后发表回答