隐式转换主要是在整型、浮点型之间的转换,将存储范围小的数据类型直接转换成存储范围大的数据类型。

例如将 int 类型的值转换成 double 类型的值,将 int 类型的值转换成 long 类型的值,或者将 float 类型的值转换成 double 类型的值。

示例代码如下。

int a = 100;
double d = a;  //将int类型转换为double类型
float f = 3.14f;
d = f;    //将float类型转换为double类型

隐式数值转换包括以下几种:
从 sbyte 类型到 short,int,long,float,double,或 decimal 类型。
从 byte 类型到 short,ushort,int,uint,long,ulong,float,double,或 decimal 类型。
从 short 类型到 int,long,float,double,或 decimal 类型。
从 ushort 类型到 int,uint,long,ulong,float,double,或 decimal 类型。
从 int 类型到 long,float,double,或 decimal 类型。
从 uint 类型到 long,ulong,float,double,或 decimal 类型。
从 long 类型到 float,double,或 decimal 类型。
从 ulong 类型到 float,double,或 decimal 类型。
从 char 类型到 ushort,int,uint,long,ulong,float,double,或 decimal 类型。
从 float 类型到 double 类型。

其中,从 int,uint 或 long 到 float 以及从 long 到 double 的转换可能会导致精度下降,但决不会引起数量上的丢失。其它的隐式数值转换则不会有任何信息丢失。

Convert 方法是数据类型转换中最灵活的方法,它能够将任意数据类型的值转换成任意数据类型,前提是不要超出指定数据类型的范围。

具体的语法形式如下

数据类型  变量名 = convert.To数据类型(变量名);

这里 Convert.To 后面的数据类型要与等号左边的数据类型相匹配。

Convert 类常用的类型转换方法如下表所示。

方法

说明

Convert.ToInt16()

转换为整型(short)

Convert.ToInt32()

转换为整型(short)

Convert.ToInt64()

转换为整型(short)

Convert.ToChar()

转换为字符型(char)

Convert.ToString()

转换为字符串型(string)

Convert.ToDateTime()

转换为日期型(datetime)

Convert.ToDouble()

转换为双精度浮点型(double)

Conert.ToSingle()

转换为单精度浮点型(float)

对于整型和浮点型的强制数据类型操作也可以使用 Convert 方法代替,但是依然会损失存储范围大的数据类型的精度。

【实例】使用 Convert 方法将分别将一个浮点型数据转换成整型和字符串型。

根据题目要求,代码去下。

class Program
{
    static void Main(string[] args)
    {
         float num1 = 82.26f;
         int integer;
         string str;
         integer = Convert.ToInt32(num1);
         str = Convert.ToString(num1);
         Console.WriteLine("转换为整型数据的值{0}", integer);
         Console.WriteLine("转换为字符串{0},",str);
    }
}

执行上面代码,效果如下图所示。

int变量相除转double java 把int转换成double_int变量相除转double java