脚本宝典收集整理的这篇文章主要介绍了基本类型的类型转换(隐式类型转换)和强制类型转换(译二),脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
基本类型的类型转换(隐式类型转换)和强制类型转换
基本类型的强制转换
所谓强制类型转换(CAST)是根据程序员的意志来进行类型变换的处理。如果隐式类型转化无法进行的场合,使用强制类型转换。用“( )”包围需要强制转换的类型,然后将其放在需要转换的变量之前。
(変換したい型)変換元の変数;@H_304_17@
【例3】强制转换的例子。
int x = 10; byte y = (byte)x;
将int类型的变量强制转换为byte类型,然后赋值给y。
如果是默认的隐式类型转换是无法将int类型转换为byte类型的。
强制转换的规则
boolean类型以外的基本类型的变量可以强制转换为其他非boolean类型的基本类型的变量。不管是将变量强制转换为存储区域更大的类型,还是将变量转换为存储区域更小的类型,都是可以。将变量强制转换为存储区域更大的时候,即使不进行强制转换,隐式的类型变换也是可以进行的。
boolean类型无法强制转换为其他类型。
将变量转换为存储领域强制转换为更窄的场合,待变换的数据可能发生溢出。
【例4】强制转换数据溢出的实例。
public class ExVAR1 { public static void main(String[] args) { short x = 257; byte y = (byte)x; //(1)强制转换为byte类型 System.out.PRintln(y); //(2) } }
说明4
(1)将short类型的变量强制转换为byte类型,然后将byte类型变量赋值给y。
(2)用println方法打印变量y的值。byte类型的变量最多制定存储一个字节的值(有符号,-128~127)。超过1个字节的数据被截断(数据溢出)。因为这个原因无法得到想要的结果。
强制转换_数据溢出
运行结果4
D:JAVA>javac ExVar1.java D:JAVA>java ExVar1 1 D:JAVA>
更新日:2012/02/18
以上是脚本宝典为你收集整理的基本类型的类型转换(隐式类型转换)和强制类型转换(译二)全部内容,希望文章能够帮你解决基本类型的类型转换(隐式类型转换)和强制类型转换(译二)所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。