2009-04-20 25 views
36

Tengo la tentación de mentir y decir que el inglés es mi segundo idioma, pero la verdad es que no tengo idea de qué significa 'Coalescer'. Sé lo que ?? 'hace' en C#, pero el nombre no tiene sentido para mí.?? Operador coalescente nulo -> ¿Qué significa coalescencia?

Busqué la palabra y entiendo que es un sinónimo de 'unirse'. 'Null Join Operator' todavía no tiene sentido.

¿Alguien me puede aclarar?

+1

¡Míralo desde una perspectiva de SQL! –

Respuesta

32

Tengo la tentación de mentir y decir que el inglés es mi segundo idioma ... pero la verdad es que no tengo ni idea de qué significa 'Coalescente'. Yo se que ?? 'hace' en C#, pero el nombre no tiene sentido para mí.

Busqué la palabra y entiendo que es un sinónimo de 'unirse'.

Diría que una descripción más precisa de "coalesce" sería "formar una cosa a partir de diferentes elementos". La "fusión" del operador ?? ocurre porque un único valor siempre se resuelve desde uno de los dos valores. El primer valor no nulo es el resultado.

5

El significado toma el primer valor no nulo.

+1

(o el último valor nulo) –

17

Coalescing es cuando tiene más de un elemento y luego termina con exactamente uno, ya sea uniendo los elementos o eligiendo un solo elemento del grupo. En el caso del ?? operador, está eligiendo el primer valor no nulo del par de valores.

8

Aquí hay otras definiciones de coalesce que pueden ayudar a tener sentido. De Answers, muestra que significa "crecer juntos, fusionar" o "unirse para formar un todo". En otras palabras, tome una secuencia de elementos y haga uno de ellos. Por lo tanto, teniendo en cuenta que null en esta discusión significa "vacío", fusionar null con un no vacío le da el que no está vacío.

2

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

Creo que la mejor definición es la "Unidos por un fin común". Así que básicamente juntándolo todo para obtener lo mejor. En términos de programación, es más obtener el primer mejor artículo.

1

Usted puede salir de este video youtube http://www.youtube.com/watch?v=YJGGmTNHPeo

Si ve el significado Inglés de coalescencia que dice “consolidar juntos”. El operador coalescente devuelve el primer valor NON-NULL de una cadena.

Por ejemplo, a continuación se muestra un código simple que combina cuatro cadenas. Así que si "str1" es nulo, intentará "str2", si "str2" es nulo probará "str3" y así sucesivamente hasta que encuentre un cadena con un valor no nulo.

string final =str1 ?? str2 ?? str3 ??