Conversión de tipos en C#: Conversión implícita y explícita explicada
La conversión de tipos es el proceso de convertir un tipo de dato en otro. También se conoce como casting o conversión de tipos. En C#, la conversión de tipos tiene dos formas principales:
Conversión implícita: Estas conversiones las realiza C# de manera segura. Por ejemplo, conversiones de tipos enteros más pequeños a más grandes y de clases derivadas a clases base.
Conversión explícita: Estas conversiones las realiza el usuario explícitamente usando operadores de conversión (cast). Requieren un operador de conversión.
Ejemplo de conversión explícita
El siguiente ejemplo muestra una conversión explícita de double a int:
using System;
namespace ConversiónTipos {
class ConversiónExplícita {
static void Main(string[] args) {
double d = 5673.74;
int i;
// Conversión de double a int
i = (int)d;
Console.WriteLine(i);
Console.ReadKey();
}
}
}
Al compilar y ejecutar el código, produce el siguiente resultado:
5673
Métodos de conversión de tipos en C#
C# proporciona los siguientes métodos integrados para conversión de tipos:
| Nº | Método y descripción |
|---|---|
| 1 | ToBoolean: Convierte un tipo a valor booleano, cuando es posible. |
| 2 | ToByte: Convierte un tipo a byte. |
| 3 | ToChar: Convierte un tipo a carácter Unicode único, cuando es posible. |
| 4 | ToDateTime: Convierte un tipo (entero o cadena) a estructuras de fecha y hora. |
| 5 | ToDecimal: Convierte un tipo de punto flotante o entero a decimal. |
| 6 | ToDouble: Convierte un tipo a double. |
| 7 | ToInt16: Convierte un tipo a entero de 16 bits. |
| 8 | ToInt32: Convierte un tipo a entero de 32 bits. |
| 9 | ToInt64: Convierte un tipo a entero de 64 bits. |
| 10 | ToSByte: Convierte un tipo a byte con signo. |
| 11 | ToSingle: Convierte un tipo a número de punto flotante pequeño. |
| 12 | ToString: Convierte un tipo a cadena. |
| 13 | ToType: Convierte un tipo a un tipo especificado. |
| 14 | ToUInt16: Convierte un tipo a entero sin signo de 16 bits. |
| 15 | ToUInt32: Convierte un tipo a entero sin signo de 32 bits. |
| 16 | ToUInt64: Convierte un tipo a entero sin signo de 64 bits. |
Ejemplo: Conversión de varios tipos a string
using System;
namespace ConversiónTipos {
class ConversiónString {
static void Main(string[] args) {
int i = 75;
float f = 53.005f;
double d = 2345.7652;
bool b = true;
Console.WriteLine(i.ToString());
Console.WriteLine(f.ToString());
Console.WriteLine(d.ToString());
Console.WriteLine(b.ToString());
Console.ReadKey();
}
}
}
Resultado de la ejecución:
75
53.005
2345.7652
True
Lenguaje C
- ASTM A1018 Grado CS Tipo B: Especificaciones de Acero Bajo en Carbono
- ASTM A424 Grado Tipo II: Especificaciones y Rendimiento del Acero
- ASTM A424 Grado Tipo I: Propiedades Clave y Rendimiento
- ASTM A792 Grado CS Tipo A – Propiedades y Especificaciones Detalladas
- Tubería ASTM A53 Grado A Tipo E – Especificaciones y Propiedades Clave
- Tubería ASTM A53 Grado A Tipo S – Especificaciones y Propiedades Clave
- Dominando la Conversión de Tipos en C#: Implícita, Explícita, Parse y Métodos Convert
- Dominando conversión y casting de tipos en Python: Guía completa
- Dominando Números, Conversión de Tipos y Matemáticas en Python
- Dominando el Casting de Tipos en Java: Desde Ensanchamiento hasta Estrechamiento y Más Allá
- Dominando Genéricos en Java: Simplifica Ordenación y Mejora Seguridad de Tipos