通过本文主要向大家介绍了c#隐式转换,c#隐式类型转换,c#无法隐式转换,c#中隐式转换,c#显示转换和隐式转换等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
什么是隐式转换
Implicit Conversion
隐式转换就是直接使用,比如可以把一个 byte 类型直接用在 int 上。
比如以下直接把 byte 的 b 赋给 int 的 n,之间是直接用的,没存在什么额外的关键字,全由系统自动完成类型转换。
备注(摘自 MSDN)
从 int、uint 或 long 到 float 的转换以及从 long 到 double 的转换的精度可能会降低,但数值大小不受影响。
不存在到 char 类型的隐式转换。
不存在浮点型与 decimal 类型之间的隐式转换。
int 类型的常数表达式可转换为 sbyte、byte、short、ushort、uint 或 ulong,前提是常数表达式的值处于目标类型的范围之内。 </div>
Implicit Conversion
隐式转换就是直接使用,比如可以把一个 byte 类型直接用在 int 上。
比如以下直接把 byte 的 b 赋给 int 的 n,之间是直接用的,没存在什么额外的关键字,全由系统自动完成类型转换。
从 |
到 |
---|---|
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 |
char |
ushort、int、uint、long、ulong、float、double 或 decimal |
float |
double |
ulong |
float、double 或 decimal |
备注(摘自 MSDN)
从 int、uint 或 long 到 float 的转换以及从 long 到 double 的转换的精度可能会降低,但数值大小不受影响。
不存在到 char 类型的隐式转换。
不存在浮点型与 decimal 类型之间的隐式转换。
int 类型的常数表达式可转换为 sbyte、byte、short、ushort、uint 或 ulong,前提是常数表达式的值处于目标类型的范围之内。 </div>