由于int
不如double
精确,我认为在将其解析为方法时需要将其强制转换。但是下面的代码运行正常。为什么呢?
public class MyClass {
public static void main(String[] args) {
System.out.println(met(3/2));
}
static String met(int i){
return "This is what I get " + i;
}
}
答案 0 :(得分:1)
当您执行padding-left/right
时,不会给您双重结果。发生整数除法,结果被截断为整数。因此不需要演员。为了获得双重结果,要么需要将其转换为double,以便获得编译器错误以使其转换为double。
尝试执行3/2
,然后遇到您期望的编译错误。