我有一个使用整数的while循环,但我将它转换为大十进制,因为该值很高,我不确定如何使我的while循环使用大十进制而不是整数我的代码如下.
public String getsize()
{
BigDecimal size = new BigDecimal(mySize);
int count = 0;
String dataType = "";
while (size > 1000 )
{
size = size.divide(size, 1000);
count++;
}
switch (count)
{
case 0:
dataType = "Bytes";
break;
case 1:
dataType = "KB";
break;
case 2:
dataType = "MB";
break;
case 3:
dataType = "GB";
break;
case 4:
dataType = "KB";
break;
}
return size + dataType ;
}
错误出现在 while (size > 1000 ) 行,因为这是 size 为整数时的方法。有人可以告诉我使用 Big Decimal 作为大小的方法吗?我在想出它时遇到了一些麻烦
编辑:给出的解决方案,现在在我的分区行中弹出了一个不相关的问题我得到:“线程“主”java.lang.IllegalArgumentException:无效舍入模式中的异常”任何想法解决这个问题?我认为最好在这里发帖,然后提出一个全新的问题,但如果那是正确的,那就不好了。