Compartir a través de


Información detallada: convertir un tipo de variable en otro

Actualización: noviembre 2007

Como se explicó en lecciones anteriores, hay distintos tipos de variables. El tipo determina la clase de datos que puede contener una variable. Una variable de tipo Integer sólo puede contener datos numéricos sin separadores decimales. Una variable de tipo String sólo puede contener texto.

¿Qué pasa cuándo desea mostrar un valor Integer en un control TextBox que requiere una variable de tipo String? La respuesta es que los datos se deben convertir de un tipo a otro. En este tema, estudiará cómo convertir los datos de un tipo en otro y aprenderá algunas técnicas utilizadas para la conversión de datos, así como algunos de sus problemas habituales.

Convertir variables en texto

Cada variable de Visual Basic se puede convertir en texto usando una función especial llamada CStr (que es la abreviatura del inglés Convert to String: convertir en cadena). Esta función, como el nombre implica, devuelve los datos representados por la variable como de tipo String. El procedimiento siguiente muestra un ejemplo sencillo de convertir un valor Integer en texto.

¡Inténtelo!

Para convertir una variable en texto

  1. En el menú Archivo, haga clic en Nuevoproyecto.

  2. En el cuadro de diálogo Nuevo proyecto, en el panel Plantillas, haga clic en Aplicación para Windows.

  3. En el cuadro Nombre, escriba Conversion y haga clic en Aceptar.

    Se abrirá un nuevo proyecto de formularios Windows Forms.

  4. Haga doble clic en el formulario para abrir el Editor de código.

  5. En el controlador del evento Form1_Load, escriba el siguiente código.

    Dim anInteger As Integer = 54
    MsgBox(CStr(anInteger))
    

    Este código declara una variable de tipo entero llamada anInteger, le asigna un valor de 54 y, a continuación, convierte ese valor en texto y lo muestra en un cuadro de mensaje llamando a la función CStr.

  6. Presione F5 para compilar y ejecutar la aplicación. Aparece un cuadro de mensaje que indica 54.

    Probemos algo sólo por diversión. En el Editor de código, cambie la línea que indica MsgBox(CStr(anInteger)) para que indique MsgBox(anInteger) y presione F5 para ejecutarla. ¿Qué pasa? El programa se comporta exactamente igual que antes. Visual Basic es lo suficientemente inteligente para saber que realmente desea convertir la variable de tipo Integer en texto para que aparezca en el cuadro de mensaje. Sin embargo, no puede confiar en este comportamiento para todas las clases: existen muchos tipos de variables que no se pueden convertir automáticamente. Por consiguiente, es una buena práctica usar siempre la función CStr, aun cuando una variable se convertiría automáticamente en texto.

Además de la conversión de variables Integer en texto, se puede utilizar la función CStr en cualquier tipo de dato numérico, como Double o Long. También se puede utilizar para convertir la información de Date y tipos de datos Boolean en texto. Para obtener más información sobre los tipos de datos, vea Información detallada: tipos de datos.

Conversión entre tipos de datos numéricos

Como aprendió en la lección aritmética, a veces el resultado de una operación aritmética no se puede expresar como un valor de tipo Integer. Al igual que Visual Basic tiene una función para convertir números en texto, también tiene funciones para convertir variables de un tipo de datos numéricos en otro. Por ejemplo, puede utilizar la función CDbl (de Convert to Double) en una operación aritmética para devolver un número fraccionario al trabajar con variables de tipo Integer. El procedimiento siguiente muestra cómo utilizar la función CDbl al dividir dos enteros.

¡Inténtelo!

Para convertir tipos de datos numéricos

  1. En el Editor de código, elimine el código que escribió en el procedimiento anterior y escriba lo siguiente:

    Dim A As Integer = 1
    Dim B As Integer = 2
    MsgBox(CDbl(A / B))
    

    Este código declara dos variables de tipo Integer (A y B), les asigna los valores 1 y 2 y, a continuación, convierte el resultado de la operación de división (A / B) utilizando la función CDbl y lo muestra en un cuadro de mensaje.

  2. Presione F5 para compilar y ejecutar la aplicación. Aparece un cuadro de mensaje que indica 0.5.

Visual Basic también tiene funciones para otros tipos de variables numéricas. Por ejemplo, si agrega dos variables de tipo Double y desea redondear el resultado al número entero más cercano, utilice la función CInt. Otras funciones de conversión numéricas son CByte, CDec, CLng y CShort. Para obtener una lista de todas las funciones de conversión de Visual Basic, vea Funciones de conversión de tipos.

Pasos siguientes

En esta lección, obtuvo información sobre cómo convertir variables numéricas en texto y la conversión entre los diferentes tipos de estas variables. En la lección siguiente, Comparaciones: Utilizar expresiones para comparar valores, aprenderá a evaluar expresiones.

Vea también

Tareas

Aritmética: crear expresiones con variables y operadores

Conceptos

Información detallada: tipos de datos

Referencia

Constantes de formato de fecha para usuarios de Visual Basic 6.0

Otros recursos

Conversiones de tipos en Visual Basic