引用类型,隐式转换列表,三元操作符

C#的值类型包括:结构体(数值类型,bool型,用户定义的结构体),枚举,可空类型。

C#的引用类型包括:数组,用户定义的类、接口、委托,object,字符串。


隐式数值转换包括以下几种

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 的转换可能会导致精度下
降但决不会引起数量上的丢失其它的隐式数值转换则不会有任何信息丢失
结合我们在数据类型中学习到的值类型的范围我们可以发现隐式数值转换实
际上就是从低精度的数值类型到高精度的数值类型的转换
从上面的10 条我们可以看出不存在到char 类型的隐式转换这意味着其它整型
值不能自动转换为char 类型这一点需要特别注意



三元操作符?: 有时也称为条件操作符
对条件表达式b? x: y 先计算条件b 然后进行判断如果b 的值为true 计算x的值

运算结果为x 的值否则计算y 运算结果为y 的值一个条件表达式从不会又计算x 也计算y 条件操作符是向右关联的也就是说从左向右分组计算例如
表达式a? b: c? d: e 将按a? b: (c? d: e)形式执行


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值