隐式转换的应用

//隐式转换是数据类型转换的一种方式

//隐式转换 就是小类型转换为大类型
//类型大小判断可以通过包含关系来区分
//类型大小判断也可以通过父子关系


//有符号整形
//long > int > short > sbyte
sbyte sb = -10; //-2^7--->2^7-1
short sh = sb;//-2^15--->2^15-1
int i = sh;//-2^31--->2^31-1
long l = i;//-2^63--->2^63-1

//无符号整形
//ulong > uint > ushort > byte
byte b = 10;//0----2^8-1 
ushort us = b;//0----2^16-1
uint ui = us;//0----2^31-1
ulong ul = ui;//0----2^64-1

//有符号类型不能隐式转换为无符号类型 // 因为无符号类型不包含负数 而有符号包含负数
//有符号和无符号之间的关系 
//short > byte
//int > ushort
//long > uint

//浮点型
//double > float 
float f = 0.12f; //占4个字节 有效数字7-8位
double d = f; //占8个字节有效数字15-18位

//十进制小数 float 和 doudle 无法隐式转换为 decimal 类型
//decimal 是十进制小数 而float 和 double 使用二进制形式 所以本质是上有不同 不能相互转化
decimal de = 123m;//占16个字节 有效数字位数 28 位

//浮点型和整形之间的相互转化
//任何的浮点型都大于任意的整形
//十进制小数也大于任意的整形
f = l;
d = ul;
de = l;

//bool 类型无法隐式转换为其他数据类型

//char 字符型
char c = 'a';//存储的是字符的编码值 ascll 是一个无符号整形 存储的数据和无符号整形 ushort 的数据一样
//char 类型数据可以隐式转换为 ushort
us = c;

//字符串
//字符串无法隐式转换位其他类型 其他类型也无法隐式转换为字符串

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值