谁能告诉我我做错了什么。我可以将 y 类型转换为 long,但对 x/y 无效。
class Test {
long convert(int x, float y) {
//return (long) x/y; // cannot convert from float to long
return (long)y;
}
}
最佳答案
这里唯一的问题是如何用括号括起来。如果你写了,你会没事的
return (long) (x / y);
当您编写 (long) x/y
时,它被视为 ((long) x)/y
,这是一个 float
根据 Java 的类型规则。
关于Java float 到 long Typecast,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17554140/