购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.2.1 自动类型转换

自动类型转换是指在Java中,当把一个数据类型的值赋给另一个数据类型的变量时,如果目标数据类型的范围大于源数据类型的范围,Java会自动执行类型转换,这种转换也称为隐式转换。

自动类型转换发生的前提是目标数据类型可以容纳源数据类型的所有值,不会导致数据丢失。这是因为目标数据类型的范围更大,可以表示比源数据类型更大范围的数值。

在自动类型转换中,不需要特别声明,编译器会自动进行处理。这样的特性使得编程更加便捷,不需要显式地进行类型转换。

自动类型转换规则如下。

● 数字型数据的转换:byte→short→int→long→float→double。

● 字符型转换为整型:char→int。

char类型比较特殊,char自动转换为int、long、float和double,但byte和short不能自动转换为char,而且char也不能自动转换为byte或short。

自动类型转换不仅发生在赋值过程中,在进行数学计算时也会发生自动类型转换,在运算中往往是先将数据类型转换为同一类型,然后再进行计算。数学计算时的自动类型转换规则如表3-3所示。

表3-3 自动类型转换规则

示例如下:

上述示例代码运行结果如下: 5jSNQzrK6HeG1fd+alGzYyf4XTDnhF9svbSvK6PFwcZvz39MTi2tPQA/NlkqZx9+

点击中间区域
呼出菜单
上一章
目录
下一章
×