自动类型转换和强制类型转换
自动类型转换和强制类型转换是两种不同的类型转换方式:
1. 自动类型转换:自动类型转换是编译器根据代码的上下文环境自行判断的结果,不需要在代码中体现出来。这种转换的特点是数据范围从小到大。例如,将小瓶水倒入到大瓶中,由于小瓶的容量比大瓶的容量小,所以倒入的水永远不可能溢出大瓶。
2. 强制类型转换:强制类型转换是程序员明确提出的,需要通过特定格式的代码来指明的一种类型转换。这种转换的目标类型取值范围小于源类型,自动类型转换无法进行,这时就需要强制类型转换。例如,将大瓶水倒入到小瓶中,如果大瓶中的水的容量小于小瓶的大小,那么水是可以完全倒入的;否则多出来的水就会溢出。所以系统默认不支持这种行为,只能由开发者自己决定是否进行强制类型转换。
需要注意的是,强制类型转换的语法格式为:变量名=(目标类型)变量名;左右的优先级高于/,对于表达式(double)sum/count,会先执行(double)sum,将sum转换为double类型,然后再进行除法运算,这样运算结果也是double类型,能够保留小数部分。
如有侵权请及时联系我们处理,转载请注明出处来自
推荐文章