我知道在Java中int可以得到2,147,483,647的值.但我想要更多的价值.我有一个公式例如:
double x = a/(b*c);
Run Code Online (Sandbox Code Playgroud)
所以分母(b*c)可以达到10 ^ 10甚至更高.但每当我执行公式时,该值始终限制为2,147,483,647.我知道因为x必须始终小于1.0.P/S:如果满足某些条件,即使变量"a"也可以达到10 ^ 10.a,b,c都是整数.
既然你要求它,这是一个BigInteger
例子:
BigInteger a = new BigInteger("yourNumberInStringFormA");
BigInteger b = new BigInteger("yourNumberInStringFormB");
BigInteger c = new BigInteger("yourNumberInStringFormC");
BigInteger x = a.divide(b.multiply(c));
Run Code Online (Sandbox Code Playgroud)
哪里"yourNumberInStringForm"
是可选的减号和数字(没有空格或逗号).例如BigInteger z = new BigIntger("-3463634");
NB:如果您的号码在其范围内,BigInteger
将实际long
为您返回. longs
结束L
,如:
long num = 372036854775807L;
Run Code Online (Sandbox Code Playgroud)
a的最大长度为long
:9,223,372,036,854,775,807.如果你的数字会低于这个数字,那么它将使你的生活更容易使用,long
或者Long
它的包装,结束BigInteger
.因为long
,你不必使用分割/乘法等方法.
归档时间: |
|
查看次数: |
33324 次 |
最近记录: |