AYUDA .NET

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

Actualizado 29 de agosto, 2023
Compartir:

Comprender los operadores lógicos es esencial cuando se trabaja con sentencias condicionales en programación. En C#, los operadores lógicos desempeñan un papel fundamental a la hora de determinar el valor de verdad de determinadas condiciones. Esta guía le guiará a través de los fundamentos de operadores lógicos en C# incluyendo conceptos como valores booleanos, precedencia de operadores, negación lógica y mucho más.

Introducción a 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.

En este artículo, nos sumergiremos en los diferentes operadores lógicos en C#, comprendiendo sus funciones y mostrando cómo puedes incorporar el operador lógico en tus aplicaciones para realizar operaciones lógicas con precisión y eficacia.

Tipos de operadores lógicos en C#

1. 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.

"Y

  • 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); //  Salida: false
    }
}
class Program
{
    static void Main(string [] args)
    {
        bool isAdult = true;
        bool hasBalance = false;
        bool canPurchase = isAdult && hasBalance;
        Console.WriteLine(canPurchase); //  Salida: false
    }
}
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim isAdult As Boolean = True
		Dim hasBalance As Boolean = False
		Dim canPurchase As Boolean = isAdult AndAlso hasBalance
		Console.WriteLine(canPurchase) '  Salida: false
	End Sub
End Class
VB   C#

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

2. Operador lógico OR (OR)

El operador lógico OR (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.

El operador OR:

  • 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); //  Salida: true
    }
}
class Program
{
    static void Main(string [] args)
    {
        bool isMember = true;
        bool hasTicket = false;
        bool canEnter = isMember 
                        hasTicket;
        Console.WriteLine(canEnter); //  Salida: 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) '  Salida: true
	End Sub
End Class
VB   C#

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

3. 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); //  Salida: true
    }
}
class Program
{
    static void Main(string [] args)
    {
        bool isLoggedOn = false;
        bool showLoginButton = !isLoggedOn;
        Console.WriteLine(showLoginButton); //  Salida: true
    }
}
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim isLoggedOn As Boolean = False
		Dim showLoginButton As Boolean = Not isLoggedOn
		Console.WriteLine(showLoginButton) '  Salida: true
	End Sub
End Class
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); //  Salida: false
bool isWeekend = false;
bool hasVacation = true;
bool isWorkDay = !(isWeekend 

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

4. 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.

El operador XOR compara los dos operandos. Si son diferentes, devuelve verdadero. Si son iguales, devuelve false.

class Program
{
    static void Main(string [] args)
    {
        bool hasPassword = true;
        bool hasSmartCard = false;
        bool canLogin = hasPassword ^ hasSmartCard;
        Console.WriteLine(canLogin); //  Salida: true
    }
}
class Program
{
    static void Main(string [] args)
    {
        bool hasPassword = true;
        bool hasSmartCard = false;
        bool canLogin = hasPassword ^ hasSmartCard;
        Console.WriteLine(canLogin); //  Salida: true
    }
}
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim hasPassword As Boolean = True
		Dim hasSmartCard As Boolean = False
		Dim canLogin As Boolean = hasPassword Xor hasSmartCard
		Console.WriteLine(canLogin) '  Salida: true
	End Sub
End Class
VB   C#

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

Otros operadores relacionados

Operadores de asignación compuestos

Los operadores de asignación compuestos combinan la aritmética con la asignación. Son una forma abreviada de realizar una operación y asignar el resultado a la variable.

int x = 5;
x += 3; //  Equivale a x = x + 3; x es ahora 8
int x = 5;
x += 3; //  Equivale a x = x + 3; x es ahora 8
Dim x As Integer = 5
x += 3 '  Equivale a x = x + 3; x es ahora 8
VB   C#

Tipos de operadores de asignación compuestos

  1. +=: Añadir y asignar
  2. -=: Restar y asignar
  3. *`=`**: Multiplicar y asignar
  4. /=: Divide y asigna
  5. %=: Módulo y asignar
  6. &=: Bitwise AND y asignar
  7. =: Bitwise OR y asignar
  8. ^=: Bitwise XOR y asignar

Operadores aritméticos

Los operadores aritméticos realizan operaciones matemáticas estándar.

Tipos de operadores aritméticos

  1. +: Adición
  2. -: Resta
  3. *``**: Multiplicación
  4. /: División
  5. %: 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.

En C#, los operadores lógicos tienen una precedencia específica:

  1. Lógica NOT (!)
  2. Multiplicativo (*, /,%)
  3. Aditivo (+, -)
  4. Pruebas relacionales y de tipo (<, >, <=, >=, es, como)
  5. Igualdad (==, !=)
  6. AND lógico (&&)
  7. OR lógico (`

    `)

Operadores lógicos 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.

Tipos de operadores lógicos bit a bit

  1. &: AND Bitwise
  2. : Bitwise OR
  3. ^: Bitwise XOR
  4. ~: Bitwise NOT
  5. <<: Desplazamiento a la izquierda
  6. >>: Derecha Shift

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

Iron Suite Un potente conjunto de herramientas para C#

Iron Suite 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. Analicemos cada uno de los componentes de Iron Suite

IronPDF C#

IronPDF permite a los desarrolladores crear, leer, editar y convertir documentos PDF dentro de una aplicación C#. Pero, ¿cómo se conecta con los operadores lógicos?

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.

¿Quieres convertir HTML a PDF? Mira esto Tutorial de conversión de HTML a PDF.

IronXL Excel Manipulación con precisión

IronXL simplifica el trabajo con archivos Excel, permitiéndole leer, escribir y manipular hojas de cálculo Excel 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.

Reconocimiento óptico de caracteres 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.

Generación y lectura de códigos de barras 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.

Conclusión

El extraordinario conjunto de herramientas IronPDF, IronXL, IronOCR e IronBarcode de Iron Suit muestra cómo los conceptos básicos de programación, como los operadores lógicos, pueden aprovecharse para desbloquear potentes funcionalidades en aplicaciones del mundo real.

Tanto si es un principiante que explora el fascinante mundo de las operaciones lógicas en C# como si es un profesional experimentado, estas herramientas pueden mejorar enormemente su proceso de desarrollo.

La buena noticia es que cada producto del Iron Suit ofrece un prueba gratuita que le permite explorar y probar estas herramientas sin ningún compromiso financiero. Si considera que se ajustan a sus necesidades, las licencias comienzan a partir de $749 por producto.

Aún mejor, puede adquirir la Iron Suite completa por el precio de sólo dos productos individuales. Es una gran oportunidad para acceder a un conjunto de herramientas que pueden transformar su forma de trabajar con documentos, datos, reconocimiento de texto y códigos de barras dentro de sus aplicaciones C#.

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

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 9,974,197 Ver licencias >
123