VB.NET presenta dos operadores lógicos que ayudan a realizar su programación … bien … más lógico. Los nuevos operadores son AndAlso y OrElse y agregan mucho a los antiguos operadores And and or.
What & amp; apos; s Nuevo
AndAlso y OrElse tienen algunas propiedades que mejoran su código de manera que las versiones anteriores de VB no podían coincidir. Ofrecen ventajas en dos categorías generales:
Video destacado
- Puede evitar ejecutar parte de una expresión lógica para evitar problemas.
- Puede optimizar el código al no ejecutar más expresiones compuestas de las requeridas.
AndAlso y OrElse son bastante parecidos a And and Or, excepto que lo harán & amp; quot; corto circuito & amp; quot; una expresión una vez que se garantiza el resultado.
Ejemplo
Supongamos que usted y amp; apos; están codificando una prueba de un resultado de cálculo como este:
La expresión if genera un & amp; quot; divide por zero & amp; quot; error en VB 6 porque Value3 es cero. (Pero vea el Consejo rápido en dividir por cero para obtener más información al respecto.) Podría ser que los casos que resultan en que Value3 sea cero son muy raros y solo ocurren cuando usted y amp; apos; están disfrutando de unas vacaciones a mil millas de distancia para que pueda volver a llamar para arreglar el programa en un modo de emergencia. (Oye! Sucede!)
Let & amp; apos; s recode el programa como un programa .NET usando AndAlso y vea qué sucede.
Después de cambiar Y a AndAlso, el programa funciona! La razón es que la última parte del compuesto If condition & amp; # x2014; (valor 2 value3) & amp; # x2014; nunca se ejecuta realmente. Cuando usa AndAlso, VB.NET sabe que la expresión puede tener éxito una vez que se determina que la primera parte de la condición & amp; # x2014; a no es mayor que Value1 & amp; # x2014; es falso. Entonces VB.NET deja de evaluar la expresión allí mismo. Un ejemplo similar podría construirse usando OrElse.
Este análisis también sugiere cómo puede agregar algo de eficiencia a su código organizando correctamente una expresión lógica compuesta. Si coloca la expresión que es más probable que sea falsa en la posición más a la izquierda cuando usa AndAlso, puede evitar que se usen ciclos de ejecución para evaluar la expresión más a la derecha. En una sola prueba, no haría suficiente diferencia para que valga la pena pensar. Pero si su prueba está dentro de un bucle de algún tipo y se ejecuta miles de millones de veces, podría hacer una gran diferencia.
Conocer estos dos nuevos operadores lógicos VB .NET puede ayudarlo a evitar errores muy sutiles o lograr eficiencias sutiles.
& amp; # x203A; Informática