【发布时间】:2015-08-20 16:26:47
【问题描述】:
也许由于我对 biginteger 的使用有限,我误解了,但我有一个程序需要用户输入页面大小和虚拟地址并计算偏移量和虚拟页面。我可以毫无问题地进行计算,但是在比较输入的迭代器时,虚拟地址(4294967295)的必要值超出了范围。我试图将这个数字声明为一个大整数,但相同的运算符似乎不起作用。我是否必须忘记零,只是想办法说输入小于或等于这个数字?代码如下:
public class VAddress {
public static void main(String args[]){
BigInteger max = new BigInteger("4294967295");
Scanner PAGEinput = new Scanner(System.in);
Scanner ADDinput = new Scanner(System.in);
System.out.println("Please Enter the system page size (between 512 and 16384):");
int page = PAGEinput.nextInt();
System.out.println("Please Enter the Virtual Address: ");
int address = ADDinput.nextInt();
if(page >= 512 && page <= 16384){
if( address >= 0 && address <= max){
}
}
}
}
【问题讨论】:
-
你考虑过
long的用法吗?
标签: java virtual biginteger