Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java—希望将long(TBs中的巨大文件大小)除以某个数字(巨大int)并安全地得到一个int_Java_Int_Type Conversion_Long Integer_Division - Fatal编程技术网

java—希望将long(TBs中的巨大文件大小)除以某个数字(巨大int)并安全地得到一个int

java—希望将long(TBs中的巨大文件大小)除以某个数字(巨大int)并安全地得到一个int,java,int,type-conversion,long-integer,division,Java,Int,Type Conversion,Long Integer,Division,我想将long(TBs中的巨大文件大小)除以某个数字(巨大int),然后安全地得到一个int。但是使用类型转换属性,int变长,结果变长。我确信我的商是整数,可以转换,或者请告诉我更好的解决方案。使用显式向下转换: long l_quot=l_size/(long)i_divisor; int i_qout=(int)l_quot; 使用显式向下广播: long l_quot=l_size/(long)i_divisor; int i_qout=(int)l_quot; 好吧,如果铸造是好的

我想将long(TBs中的巨大文件大小)除以某个数字(巨大int),然后安全地得到一个int。但是使用类型转换属性,int变长,结果变长。我确信我的商是整数,可以转换,或者请告诉我更好的解决方案。

使用显式向下转换:

long l_quot=l_size/(long)i_divisor;
int i_qout=(int)l_quot;

使用显式向下广播:

long l_quot=l_size/(long)i_divisor;
int i_qout=(int)l_quot;

好吧,如果铸造是好的,那么只是铸造

long size = ...;
int divisor = ...;
int result = (int) (size / divisor);
当然,只有在确定结果真正在
int
范围内时,才应该这样做-当然,您可以随时检查:

long size = ...;
int divisor = ...;
long fullResult = size / divisor;
if (fullResult < Integer.MIN_VALUE || fullResult > Integer.MAX_VALUE) {
    // Whatever, e.g. throw an exception
}
int result = (int) fullResult;
long size=。。。;
整数除数=。。。;
long fullResult=大小/除数;
if(fullResultInteger.MAX_值){
//不管怎样,例如抛出异常
}
int result=(int)fullResult;

如果施法没问题,那就施法吧

long size = ...;
int divisor = ...;
int result = (int) (size / divisor);
当然,只有在确定结果真正在
int
范围内时,才应该这样做-当然,您可以随时检查:

long size = ...;
int divisor = ...;
long fullResult = size / divisor;
if (fullResult < Integer.MIN_VALUE || fullResult > Integer.MAX_VALUE) {
    // Whatever, e.g. throw an exception
}
int result = (int) fullResult;
long size=。。。;
整数除数=。。。;
long fullResult=大小/除数;
if(fullResultInteger.MAX_值){
//不管怎样,例如抛出异常
}
int result=(int)fullResult;

我想你是想在第二个语句中使用
l
。@PatriciaShanahan是的,我错了。希望你的变量命名和间距在工作中更好。下划线!O_o@IgorRodriguez我不工作。我是一名学生,实际上远远超出了我的时区,无法清晰地思考:我想你是想在第二个语句中使用
l
。@PatriciaShanahan是的,我错了。希望你的变量命名和间距在工作中更好。下划线!O_o@IgorRodriguez我不工作。我是一名学生,事实上,我远离了自己的时区,无法清晰地思考:D