gpt4 book ai didi

java - java中的类型转换: Integer and Double

转载 作者:行者123 更新时间:2023-12-01 17:29:06 27 4
gpt4 key购买 nike

有人可以解释一下 int y = (int) x; 行中的类型转换是如何工作的吗?谢谢您

public class typecast
{
public static void main(String [] args)
{
double x=10.5;
int y=(int) x;
System.out.println("x="+x);
System.out.println("y="+y);
}
}

最佳答案

类型转换执行缩小类型转换。确切的转换取决于 double 值,如下所示:

  • 如果它在 int 值的范围内,则向零舍入。
  • 如果超出范围或者是“Inf”值,则转换会给出 Integer.MIN_VALUEInteger.MAX_VALUE,具体取决于符号。
  • 如果它是“NaN”值,则转换结果为零。

引用:JLS 5.1.3

注意:“向零舍入”定义如下:

"The Java programming language uses round toward zero when converting a floating value to an integer (§5.1.3), which acts, in this case, as though the number were truncated, discarding the mantissa bits. Rounding toward zero chooses at its result the format's value closest to and no greater in magnitude than the infinitely precise result."

关于java - java中的类型转换: Integer and Double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12757104/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com