首页 >> 百科生活 > 趣味生活 >

强制类型转换java(强制类型转换)

2023-12-02 06:48:08 来源: 用户:左裕行 

大家好,我是小跳,我来为大家解答以上问题。强制类型转换java,强制类型转换很多人还不知道,现在让我们一起来看看吧!

规则可不少,挺乱的其实:

强制数据类型转换: int nowC = (int)c;

还可以这样,使用intValue方法,返回一个int值:

Double d = 5 / 9.0 * (f - 32);

int nowC = d.intValue();

Double类是基本数据类型double所对应的包装类。

基本数据类型转换的规则:

Java中基本数据类型共有8种,其中boolean类型不能转换为其它类型,其它类型也不能转换为boolean型

除了boolean类型,还有7种,按照它们的容量(也就是表数范围,就是能表示的数的大小范围,比如char是0——65535)的大小,从小到大,排序依次为:

byte short char int long float double

1.容量小的向容量大的转换,可以自动转换,比如可以直接将一个int类型赋值给double:

double d = 34;

2.容量大的向容量小的转换,必须强制类型转换,就是你上面的那种形式,比如:

double c = 5/9.0 *(f - 32);

int nowC = (int)c;

3.整数类型常量默认为int类型,比如17

4.浮点类型常量默认为double类型,比如3.14

5.在多种数据类型混合运算时,容量小的自动转换为整个表达式中容量最大的,然后再进行计算,比如:

int i = 9; float f = 4f; double d = 3.14; double dd = i+f+d;

此时,i和f都各自先转换成double,在进行+运算。

6.在多种数据类型混合运算时,byte short char 3者不会互相转换,他们各自转换为int再进行计算

7.在有些时候,容量小的会自动提升为容量大的,比如方法重载传参数时候,

但是byte 和 short 不会自动提升为char,其它类型按照我上面所述的顺序提升。

差不多就这些,不明白补充,另外需要注意的是强转虽然编译没问题,但是运行时,有可能会数据溢出,损失精度

本文到此讲解完毕了,希望对大家有帮助。

  免责声明:本文由用户上传,与本网站立场无关。财经信息仅供读者参考,并不构成投资建议。投资者据此操作,风险自担。 如有侵权请联系删除!

 
分享:
最新文章