在 Java 中,int cast 需要多长时间?
这个问题不在于如何将长整型正确转换为 int,而在于当我们错误地将它转换为 int 时会发生什么。
所以考虑这个代码 -
@Test
public void longTest()
{
long longNumber = Long.MAX_VALUE;
int intNumber = (int)longNumber; // potentially unsafe cast.
System.out.println("longNumber = "+longNumber);
System.out.println("intNumber = "+intNumber);
}
这样可以得到输出 -
longNumber = 9223372036854775807
intNumber = -1
现在假设我进行以下更改 -
long longNumber = Long.MAX_VALUE - 50;
然后我得到输出 -
longNumber = 9223372036854775757
intNumber = -51
问题是,多头的值如何转换为整数?