Operador ternario y de valor nulo en C#

Curso de C# y ASP.NET Core 3 MVC

El artículo de hoy lo vamos a dedicar a entender el funcionamiento del operador ternario y de valor nulo en C#. Si tu intención es convertirte en un master de C# y ASP.NET Core 3, dejo el enlace a nuestro Curso de C# 8 Y ASP.NET CORE 3 MVC

¿Qué es el operador ternario?

El operador ternario (?:) de C# devuelve un valor en función de una expresión booleana. Para usarlo necesitamos tres operandos que son, por orden:

  • Una expresión booleana.
  • Una expresión cuyo valor se devolverá si la expresión booleana vale true.
  • Una expresión cuyo valor se devolverá cuando la expresión booleana valga false.

El tipo de dato devuelto por las dos últimas expresiones debe ser idéntico, en caso contrario, el compilador generará un error de compilación. El formato de una expresión que utiliza el operador ternario es el siguiente:

<expresión booleana> ? <expresión a evaluar si true> : <expresión a evaluar si false>

La asignación de una cadena de caracteres en función de un número puede realizarse mediante el operador ternario de la siguiente manera:

int numClientes = 10;
string etiqueta = numClientes <= 30 ? "Menos de 30 clientes" : "Más de 30 clientes";
Console.WriteLine(etiqueta); //Muestra "10 clientes"

// Como puedes observar dependiendo de lo que retorne (true o false) la condición (numClientes <= 30), se asignará a la variable numClientes el valor "Menos de 30 clientes" o "Mas de 30 clientes".

numClientes = 120;
etiqueta = numClientes <= 100 ? "Menos de 100 clientes" : "Más de 100 clientes";
Console.WriteLine(etiqueta); //Muestra "Más de 100 clientes"

// Como puedes observar dependiendo de lo que retorne (true o false) la condición (numClientes <= 100), se asignará a la variable numClientes el valor "Menos de 100 clientes" o "Más de 100 clientes".

¿Qué es el operador de valor nulo?

Este operador recibe dos operandos y devuelve el primero de ellos cuyo valor no sea null.

string ciudad = null;
string etiqueta = ciudad ?? "indefinida";
Console.WriteLine(etiqueta); //Muestra "indefinida"

// en este primer caso, puedes ver como la variable ciudad toma el valor null, en este caso, se comprueba mediante el operador ??, si la variable ciudad contiene null
// de ser así, le asigna por defecto el texto "indefinida"
ciudad = "VALENCIA";
etiqueta = ciudad ?? "indefinida";
Console.WriteLine(etiqueta); //Muestra "VALENCIA"

// en este segundo caso, puedes ver cómo la variable ciudad toma el valor "VALENCIA", en este caso, se comprueba mediante el operador ??, si la variable ciudad contiene null 
// como no es así, la variable ciudad, contiene "VALENCIA" ya que no es null.

 

Espero que este artículo sobre estos útiles operadores te ayude, si te ha gustado este artículo compártelo por favor, nos ayudas mucho!

Un saludo y nos vemos pronto

<a href=”https://www.linkedin.com/in/jesus-jimenez-madrid/”>Jesús Jiménez</a>

  • Share:

Deja un comentario

Your email address will not be published.

Enviar un mensaje




Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies
Call Now Button