howdoicompareanintwithabigintegerinjava? ispecificallyneedtheknowifanintislessthanabiginteger.hereisthecodeiamusing 3360
私密性统计信息gertwo=newbiginteger ('2);
privatestaticbigintegerthree=newbiginteger ('3);
privatestaticbigintegerzero=newbiginteger ('0);
publicstaticbigintegerbigintsqrootceil (bigintegerx ) throwsillegalargumentexception {
if(x.comPareto(biginteger.zero )0) {
thrownewillegalargumentexception (' negative argument.' );
}
if (x==big integer.zero|| x==big integer.one ) }
返回x;
}
for(y=x.divide ) two;
y.comPareto(x.divide ) y ) 0;
y=() x.divide ).add (y ) ).divide (two );
if(x.comPareto(y.multiply ) y )==0) )
返回y;
} else {
returny.add(biginteger.one;
}
}
私有身份验证优先级big (二进制) {
if(n.mod(two )==zero ) ) )。
返回(n.equals ) two );
if(n.mod(three )==zero ) ) )。
返回(n.equals ) three );
for(intI=5; i=m; I=6({(
if(n.mod(biginteger.valueof(I )==zero ) ) ) ) ) )。
返回假;
if(n.mod(biginteger.valueof ) I2 )==zero () ) ) ) ) ) ) )。
返回假;
(;
返回真;
(;
解决方案
howdoicompareanintwithabigintegerinjava? ispecificallyneedtheknowifanintislessthanabiginteger。
turntheintintoabigintegerbeforecomparing :
if(biginteger.valueof(intvalue ).com Pareto (bigintegervalue )0) {
//intvalueislessthanbigintegervalue
}