AYUDA .NET

Operadores lógicos de C# (Cómo funciona para desarrolladores)

Publicado en 15 de agosto, 2024
Compartir:

Comprender los operadores lógicos es esencial cuando se trabaja con sentencias condicionales en programación. Desde XOR hasta las operaciones aritméticas, desempeñan un papel fundamental a la hora de determinar el valor de verdad de unas condiciones dadas.

Esta guía le guiará a través de los fundamentos de los operadores lógicos en C#, incluyendo conceptos como valores booleanos, precedencia de operadores, negación lógica y mucho más.

¿Qué son los operadores lógicos?

Los operadores lógicos, conocidos comúnmente como operaciones lógicas, constituyen el núcleo de la toma de decisiones en programación. Operan sobre expresiones booleanas, evaluándolas para producir un valor booleano de verdadero o falso, dependiendo de las condiciones proporcionadas. Estos operadores desempeñan un papel crucial en el control del flujo de su programa, permitiéndole ejecutar bloques específicos de código en función de determinados criterios.

A continuación, nos sumergiremos en los diferentes operadores lógicos en C#, comprendiendo sus funciones y mostrando cómo puede incorporar el operador lógico en sus aplicaciones para realizar operaciones lógicas con precisión y eficacia.

Tipos de operadores lógicos en C#

Operador lógico AND (&&)

El operador lógico AND(&&) combina dos expresiones booleanas y devuelve verdadero si ambas son verdaderas. Si uno o ambos son falsos, el resultado es falso. Se utiliza habitualmente en situaciones en las que deben cumplirse todas las condiciones. Por ejemplo, validar si un usuario tiene la edad y el saldo suficientes para comprar.

El operador &&:

  • Evalúa el operando izquierdo
  • Si el operando de la izquierda es falso, toda la expresión es falsa
  • Si el operando izquierdo es verdadero, se evalúa el operando derecho
  • La expresión es verdadera si ambos operandos son verdaderos

    Si el operando izquierdo es falso, el operando derecho no se evalúa, ya que se garantiza que toda la expresión es falsa.

class Program
{
   static void Main(string [] args)
   {
       bool isAdult = true;
       bool hasBalance = false;
       bool canPurchase = isAdult && hasBalance;
       Console.WriteLine(canPurchase); // Output: false
   }
}
class Program
{
   static void Main(string [] args)
   {
       bool isAdult = true;
       bool hasBalance = false;
       bool canPurchase = isAdult && hasBalance;
       Console.WriteLine(canPurchase); // Output: false
   }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

En este ejemplo, aunque isAdult es verdadero, hasBalance es falso, por lo que el resultado es falso.

Operador lógico OR (

)

El operador lógico OR(

) combina dos expresiones booleanas y devuelve verdadero si al menos una es verdadera. Si ambos son falsos, el resultado es falso. Ideal para situaciones en las que al menos una de las condiciones debe cumplirse. Por ejemplo, permitir la entrada si una persona es socio o tiene una entrada.

En

operador:

  • Evalúa el operando izquierdo
  • Si el operando de la izquierda es verdadero, toda la expresión es verdadera
  • Si el operando izquierdo es falso, se evalúa el operando derecho
  • La expresión es verdadera si cualquiera de los operandos es verdadero

    Si el operando izquierdo es verdadero, el operando derecho no se evalúa, ya que se garantiza que toda la expresión es verdadera.

class Program
{
   static void Main(string [] args)
   {
       bool isMember = true;
       bool hasTicket = false;
       bool canEnter = isMember 
 hasTicket;
       Console.WriteLine(canEnter); // Output: true
   }
}
class Program
{
   static void Main(string [] args)
   {
       bool isMember = true;
       bool hasTicket = false;
       bool canEnter = isMember 
 hasTicket;
       Console.WriteLine(canEnter); // Output: true
   }
}
Friend Class Program
   Shared Sub Main(ByVal args() As String)
	   Dim isMember As Boolean = True
	   Dim hasTicket As Boolean = False
	   Dim canEnter As Boolean = isMember hasTicket
	   Console.WriteLine(canEnter) ' Output: true
   End Sub
End Class
VB   C#

Aquí, como isMember es verdadero, hasTicket ni siquiera se evalúa, y el resultado es verdadero.

Operador lógico NOT (!)

El operador lógico NOT(!) invierte el valor de una expresión booleana. Si el operando es verdadero, el resultado es falso, y viceversa. Se utiliza habitualmente para revertir una enfermedad. Por ejemplo, si una función está activada, puede utilizar el operador NOT para determinar si debe desactivarse.

Así es como funciona:

  • Evalúa el operando.
  • Si el operando es verdadero, el resultado es falso.
  • Si el operando es falso, el resultado es verdadero.
class Program
{
   static void Main(string [] args)
   {
       bool isLoggedOn = false;
       bool showLoginButton = !isLoggedOn;
       Console.WriteLine(showLoginButton); // Output: true
   }
}
class Program
{
   static void Main(string [] args)
   {
       bool isLoggedOn = false;
       bool showLoginButton = !isLoggedOn;
       Console.WriteLine(showLoginButton); // Output: true
   }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Aquí, como isLoggedOn es falso, el operador lógico NOT devuelve verdadero.

Combinación con otros operadores

El operador NOT puede utilizarse con los operadores AND y OR para crear condiciones más complejas.

bool isWeekend = false;
bool hasVacation = true;
bool isWorkDay = !(isWeekend 
 hasVacation);
Console.WriteLine(isWorkDay); // Output: false
bool isWeekend = false;
bool hasVacation = true;
bool isWorkDay = !(isWeekend 
 hasVacation);
Console.WriteLine(isWorkDay); // Output: false
Dim isWeekend As Boolean = False
Dim hasVacation As Boolean = True
Dim isWorkDay As Boolean = Not (isWeekend hasVacation)
Console.WriteLine(isWorkDay) ' Output: false
VB   C#

Operador lógico XOR (^)

El operador lógico XOR(^) devuelve verdadero si los dos operandos tienen valores diferentes. Si ambos son iguales, devuelve false. Este operador resulta especialmente útil cuando se desea garantizar que exactamente una de las dos condiciones sea cierta, pero no ambas.

class Program
{
   static void Main(string [] args)
   {
       bool hasPassword = true;
       bool hasSmartCard = false;
       bool canLogin = hasPassword ^ hasSmartCard;
       Console.WriteLine(canLogin); // Output: true
   }
}
class Program
{
   static void Main(string [] args)
   {
       bool hasPassword = true;
       bool hasSmartCard = false;
       bool canLogin = hasPassword ^ hasSmartCard;
       Console.WriteLine(canLogin); // Output: true
   }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Como los valores de hasPassword y hasSmartCard son diferentes, el XOR lógico devuelve true. Si ambos fueran verdaderos o ambos fueran falsos, devolvería false.

Otros operadores relacionados

Operador de asignación compuesta

Un operador de asignación compuesto combina la aritmética con la asignación. Son una forma abreviada de realizar una operación y asignar el resultado a la variable. He aquí algunos tipos de operadores de asignación compuestos:

  • +=: Añadir y asignar
  • -=: Restar y asignar
  • *=: Multiplicar y asignar
  • /=: Divide y asigna
  • %=: Módulo y asignar
  • &=: Bitwise AND y asignar
  • : Bitwise OR y asignar
  • ^=: Bitwise XOR y asignar

    Y aquí están en acción:

int x = 5;
x += 3; // Equivalent to x = x + 3; x is now 8
int x = 5;
x += 3; // Equivalent to x = x + 3; x is now 8
Dim x As Integer = 5
x += 3 ' Equivalent to x = x + 3; x is now 8
VB   C#

Operadores aritméticos

Los operadores aritméticos realizan operaciones matemáticas estándar. Entre ellas figuran:

  • +: Suma
  • -: Resta
  • *: Multiplicación
  • /: División
  • %: Módulo(resto de la división)

Precedencia del operador

La precedencia de los operadores define el orden en que se realizan las operaciones en una expresión. Por ejemplo, la multiplicación y la división se realizan antes que la suma y la resta.

Este es el orden de precedencia de los operadores en C#:

  • Lógica NOT(!)
  • Multiplicativo(*, /,%)
  • Aditivo(+, -)
  • Pruebas relacionales y de tipo <, >, <=, >=, es, como)
  • Igualdad(==,!=)
  • AND lógico(&&)
  • OR lógico(

    )

Operadores bit a bit

Aparte de los operadores lógicos que trabajan sobre valores booleanos, algunos operadores lógicos bitwise trabajan sobre la representación binaria de números enteros. Los tipos de operadores lógicos bit a bit son:

  • &: AND Bitwise
  • : OR Bitwise
  • ^: Bitwise XOR
  • ~: Bitwise NOT
  • <<: Mayúscula Izquierda
  • >>: Derecha Shift

    Estos operadores bit a bit permiten manipular bits individuales dentro de un valor entero.

Iron Suite: A Powerful Toolkit for C#;

EnIron Suite para desarrollo en C# es una colección de bibliotecas diseñadas para ampliar las funcionalidades de la programación en C#. Este notable conjunto de herramientas puede ayudar a los desarrolladores en una amplia gama de tareas, como el procesamiento de documentos, el tratamiento de datos y el reconocimiento de textos. Exploremos cómo aprovecha cada producto los operadores lógicos.

IronPDF

IronPDF permite a los desarrolladores crear, leer, editar y convertir documentos PDF dentro de una aplicación C#. Piense en una situación en la que deba filtrar y extraer información específica de un PDF en función de determinadas condiciones. Se pueden emplear operadores lógicos para definir estas condiciones, lo que permite al programa tomar decisiones inteligentes sobre qué datos extraer o manipular.

Descubra cómo IronPDF mejora la gestión de documentos PDF.

IronXL

IronXL simplifica el trabajo con archivos de Microsoft Excel, permitiéndole leer, escribir y manipular hojas de cálculo directamente en C#. Puede utilizar operadores lógicos para crear condiciones dinámicas mientras procesa los datos. Por ejemplo, utilizando el operador lógico AND para filtrar registros que cumplan varios criterios o utilizando el operador lógico OR para seleccionar filas que cumplan varias condiciones.

Aprende a trabajar con Excel utilizando IronXL.

IronOCR

IronOCR es una potente herramienta que permite a su aplicación C# reconocer y leer texto de imágenes. Los operadores lógicos pueden intervenir en el tratamiento posterior del texto extraído. Imagine un caso de uso en el que necesite validar la información extraída. Utilizando los operadores lógicos NOT, AND, OR, puede crear reglas de validación complejas para garantizar la exactitud de los datos.

Vea cómo IronOCR permite el reconocimiento óptico de caracteres.

IronBarcode

IronBarcode añade la capacidad de generar, leer y reconocer códigos de barras dentro de una aplicación C#. Puede utilizar operadores lógicos para determinar qué tipo de código de barras desarrollar o leer en función de condiciones específicas o para validar los datos del código de barras de acuerdo con ciertas reglas lógicas.

Descubra cómo IronBarcode gestiona las operaciones con códigos de barras.

Conclusión

Los operadores lógicos son una habilidad imprescindible para cualquier programador en ciernes, y esta guía es sólo una muestra de lo que pueden hacer los operadores de C#. Con elIron Suite para desarrollo en C#podrá ver algunos ejemplos prácticos del uso de operadores lógicos en aplicaciones del mundo real.

Si desea practicar sus conocimientos de C#, todos los productos de Iron Suite pueden utilizarse de forma totalmente gratuita en un entorno de desarrollo. Tanto si acaba de empezar como si ya es un profesional de C#, estas herramientas pueden ayudarle a llevar su programación al siguiente nivel.

< ANTERIOR
C# Round (Cómo funciona para los desarrolladores)
SIGUIENTE >
C# Getter Setter (Cómo funciona para desarrolladores)

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,622,374 Ver licencias >