2015-12-22 35 views
0

我在intellij想法中得到以下错误。java错误不兼容的类型所需int找到双重

不兼容的类型。 required int found double

我是java新手,不知道这个错误是什么。

public class Temperature { 
    public int calculateF(int cs){ 
     int f = cs * 9/5 + 32; 
     return f; 
    } 
    public int calculateC(int f){ 
     int c = (f-32/1.8000); 
     return(c); 
    } 
} 

回答

1

1.8除的结果为double。如果你想要一个int,你需要投或者回合。类似的,

public int calculateC(int f) { 
    return Math.round(f - 32/1.8f); 
} 
0

了解java中的十进制值的默认基本数据类型是double。根据代码(f-32/1.8000);,您基本上将该值分成小数,将结果转换为double。将它分配到int数据类型将导致您在IDE中遇到的不兼容类型。解决方法是更改​​您的变量数据类型和返回类型,或者不要将(f-32)划分为十进制值。

相关问题