【发布时间】:2015-07-02 14:48:08
【问题描述】:
我正在编写一些代码,我必须将 long 转换为 int。输入以字符串形式出现,但实际数字太大而无法立即解析为 int。所以我尝试将其解析为 long,然后转换为 int,这很有效,也让我感到困惑,因为我认为它不会。
public void setNum(String Num) {
if (Num != null){
//THIS MAKES NO SENSE **to me** :(
this.Num = (int) Long.parseLong(Num);
} else {
this.Num = -1;
}
}
我已经阅读了我在这里找到的其他几个主题,特别是 this one,虽然它讨论了如何安全地转换它们,但它没有解释这个过程是如何工作的,我很好奇至于它是怎么做的。我知道如果 long 为 > Integer.MAX_VALUE 会导致数据在转换时被更改,我仍然对转换的实际工作方式感到困惑。
【问题讨论】:
标签: java casting integer long-integer