归入长赋值
2022-09-03 09:36:21
我一直在尝试这种int和长转换,我尝试将变量分配给变量。代码如下:int
long
public static void main(String []args){
int i = 1024;
long j = i;
long k = i*i*i*i;
System.out.println("j= " +j+ ", k= " +k);
}
因此,在打印时,它只是给出了 .但是在打印时,它显示出溢出(=0)。我使用这种技术解决了这个问题,我已经明确地将每个都转换为。即j
1024
k
k
i
long
public static void main(String []args){
int i = 1024;
long j = i;
long k = ((long)i)*((long)i)*((long)i)*((long)i);
System.out.println("j= " +j+ ", k= " +k);
}
现在,它显示了 和 的正确值。所以,我想知道为什么在第二种情况下需要这个,而不是在第一个案例中。,则可以在此繁重的赋值之后保留此值。但是,为什么没有正确分配它?j
k
int
k
long