3.5.3 强制类型转换

Posted avention

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.5.3 强制类型转换相关的知识,希望对你有一定的参考价值。

    在必要的时候,int类型的值将会自动转换为double类型。但另一方面,有时也需要将double转换成int。在Java中,允许进行这种数值之间的类型转换。当然,有可能会丢失一些信息。在这种情况下,需要通过强制类型转换(cast)实现这个操作。强制类型转换的语法格式是在圆括号中给出想要转换的目标类型,后面紧跟待转换的变量名。例如:
            double x = 1.234;
            int nx = (int)x;
            System.out.println(nx);    
 
 
    输出nx的值为1.强制类型转换通过截断小数部分将浮点值转换为整型。
 
    如果想对浮点数进行舍入,需要使用Math.round方法:
            double x = 9.99;
            int nx = (int)Math.round(x);
            System.out.println(nx);

    输出nx的值为10。当调用round的时候,仍然需要使用强制类型转换(int),其原因是round方法返回的结果为long类型,由于存在信息丢失的可能性,所以只有使用显式的强制类型转换才能将long类型转换成int类型。

以上是关于3.5.3 强制类型转换的主要内容,如果未能解决你的问题,请参考以下文章

Java中的强制类型转换是如何转换的?

Java中的强制类型转换是如何转换的?

C语言强制类型转换

怎样让vs2013不进行强制类型转换

怎么把Map类型强制转换成List类型??

请问double型可以强制转换成int型吗?