Boolean (Tipo de datos, Visual Basic)

Contiene valores que solo pueden ser True o False. Las palabras clave True y False corresponden a los dos estados de las variables Boolean.

Comentarios

Use el Boolean tipo de datos para contener valores de dos estados como true/false, sí/no o activado/desactivado.

El valor predeterminado de Boolean es False.

Los valores Boolean no se almacenan como números y los valores almacenados no están diseñados para ser equivalentes a los números. Nunca debe escribir código que se base en valores numéricos equivalentes para True y False. Siempre que sea posible, se debe restringir el uso de variables Boolean a los valores lógicos para los que están diseñadas.

Conversiones de tipos

Cuando Visual Basic convierte valores de tipos de datos numéricos en Boolean, 0 se convierte en False y todos los demás valores se convierten en True. Cuando Visual Basic convierte valores Boolean en tipos numéricos, False se convierte en 0 y True se convierte en -1.

Al convertir entre valores Boolean y tipos de datos numéricos, tenga en cuenta que los métodos de conversión de .NET Framework no siempre generan los mismos resultados que las palabras clave de conversión de Visual Basic. Esto se debe a que la conversión de Visual Basic conserva el comportamiento compatible con versiones anteriores. Para más información, consulte "El tipo booleano no se convierte en tipo numérico con precisión" en Solución de problemas de los tipos de datos.

Sugerencias de programación

  • Números negativos. Boolean no es un tipo numérico y no puede representar un valor negativo. En cualquier caso, no debería usar Boolean para contener valores numéricos.

  • Caracteres de tipo. Boolean no tiene caracteres de tipo literal ni caracteres de tipo identificador.

  • Tipo de Framework. El tipo correspondiente en .NET Framework es la estructura System.Boolean.

Ejemplo

En el ejemplo siguiente, isLegacyFramework y isModernNet son variables de tipo Boolean, que almacena una configuración simple yes/no.

Dim runtimeDescription As String = 
    Runtime.InteropServices.RuntimeInformation.FrameworkDescription

Dim isLegacyFramework As Boolean
Dim isModernNet As Boolean

' Check if the program is running on legacy or modern .NET
If runtimeDescription.Contains(".NET Framework") Then
    isLegacyFramework = True
ElseIf runtimeDescription.Contains(".NET") Then
    isModernNet = True
End If

Consulte también