在Java中将double转换为int

时间:2014-04-29 21:09:38

标签: java

我有以下变量,我试图将myInt变为double,但是,我得到了一个"无法从double转换为int'错误。我注意到我可以在没有事故的情况下将双精度变为int,但我不确定为什么会失败。因为我是编程新手,请耐心等待。

    double myDouble = 4;
    int myInt;


    myInt = myDouble;

    System.out.println(myInt);

谢谢!

3 个答案:

答案 0 :(得分:6)

作业double myDouble = 4包含一个"原始扩展转换",它将int文字4加到double,具体来说, 4.0。 Java通常不允许隐式"原始缩小转换" (相反),这是myInt = myDouble;试图做的事情。

但是,您可以使用强制转换为int

myInt = (int) myDouble;

答案 1 :(得分:4)

Java会在没有帮助的情况下扩大转化次数(例如intdouble)但是对于缩小转化,您需要进行显式转换。

答案 2 :(得分:1)

写下这个:

myInt = (int) myDouble;