类型自动转换
在进行运算时,不同类型的数据要转换成同一类型。
运算时,char字符型转换为了int整型,此时为自动转换。
赋值转换
在赋值运算的过程中,左边的变量类型和右边的表达式类型不一致时,首先将右边表达式的类型转换为左边变量的类型,最终将结果赋值给左边的变量,整个赋值表达式的结果类型是左边变量的类型。
整型数据赋值给double,float类型时,数值不变,但以double,float实型形式存储到变量中。
将float,double实型数据赋给整型变量时,舍去实数的小数部分,只保留整数部分。
字符类型存储的是字符的ASCII码。所以字符类型可以以整数形式输出。
将整数赋值给字符类型,然后以字符类型输出,就是输出ASCII对应的整形的字符。
当字符型数据赋值给整型变量时,由于字符型数据只占一个字节,而整型占2或4个字节,因此字符型数据只存低八位,高位由系统处理。
强制类型转换
如果需要,程序员可以自己在代码中明确地提出要进行类型转换,这称为强制类型转换。
自动类型转换是编译器隐式地进行的一种类型转换,不需要在代码中体现出来;强制类型转换是程序员明确提出的、需要通过特定格式的代码来指明的一种类型转换。换句话说,自动类型转换不需要程序员干预,强制类型转换必须有程序员干预。
如果不进行干预,那么sum / count的运算结果也是 int 类型,小数部分将被丢弃 。
知识点不全,后续会继续补充。