标签: biginteger

如何在Java中生成随机BigInteger值?

我需要生成0(包括)到n(不包括)范围内的任意大的随机整数.我最初的想法是调用nextDouble并乘以n,但是一旦n大于2 53,结果将不再均匀分布.

BigInteger 有以下构造函数可用:

public BigInteger(int numBits, Random rnd)
Run Code Online (Sandbox Code Playgroud)

构造一个随机生成的BigInteger,均匀分布在0到(2 numBits - 1)的范围内,包括0和(2 numBits - 1).

如何使用它来获得0到n范围内的随机值,其中n不是2的幂?

java random biginteger

62
推荐指数
3
解决办法
6万
查看次数

如何找到Java BigInteger的平方根?

是否有一个库可以找到BigInteger的平方根?我希望它离线计算 - 只有一次,而不是在任何循环内.所以即使是计算成本高昂的解决方案也没关系

我不想找到一些算法和实现.一个现成的解决方案将是完美的.

java biginteger square-root

54
推荐指数
5
解决办法
5万
查看次数

BigInteger没有限制意味着什么?

我查看了与Big Integer有关的stackoverflow问题,特别是我不理解这一行(斜体字):

在BigInteger类中,我没有限制,并且有一些有用的函数,但将你漂亮的代码转换为使用BigInteger类非常令人沮丧,特别是当原始操作符不能在那里工作时你必须使用这个类中的函数.

我不知道我错过了什么,但代表一些没有限制的东西,你需要无限的记忆?这是什么诀窍?

java integer-overflow biginteger

49
推荐指数
3
解决办法
6万
查看次数

bigint的JSON传输:12000000000002539转换为12000000000002540?

我正在传输原始数据,[{id: 12000000000002539, Name: "Some Name"}]并且我[{id: 12000000000002540, Name: "Some Name"}]在解析后得到了对象,因为现在服务器端将id转换为字符串似乎有所帮助.但有没有更好的方法来正确传输bigint数据?

javascript json biginteger

48
推荐指数
1
解决办法
1万
查看次数

使用BigDecimal作为货币的一个现实例子明显优于使用double

我们知道使用double货币是容易出错的,不推荐使用.但是,我还没有看到一个现实的例子,BigDecimal虽然double失败了,但不能通过一些舍入来简单地修复.


注意琐碎的问题

double total = 0.0;
for (int i = 0; i < 10; i++) total += 0.1;
for (int i = 0; i < 10; i++) total -= 0.1;
assertTrue(total == 0.0);
Run Code Online (Sandbox Code Playgroud)

不计算,因为它们通过舍入(在这个例子中从0到16的小数位的任何东西)都可以解决.


涉及总结大值计算可能需要一些中间圆棒,但由于流通总货币之中USD 1e12,爪哇double(即标准IEEE双精度其15个十进制数字)仍然是足够美分事件.


涉及分工的计算通常是不精确的,即使是BigDecimal.我可以构造一个不能用doubles 执行的计算,但可以BigDecimal使用100的标度执行,但它不是你在现实中可以遇到的东西.


我没有声称这样一个现实的例子不存在,只是我还没有看到它.

我也肯定同意,使用double更容易出错.

我正在寻找的是如下方法(根据Roland Illig的回答)

/** 
  * Given an input which has three decimal …
Run Code Online (Sandbox Code Playgroud)

java floating-point currency biginteger

44
推荐指数
5
解决办法
6806
查看次数

MySQL:bigint Vs int

我一直在使用INT(10),并只注意到WordPress使用BIGINT(20) - 所不同的是使用的ID自动递增BIGINT(20)和int(10)?我应该将哪一个用于id列?

`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
Run Code Online (Sandbox Code Playgroud)

VS

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
Run Code Online (Sandbox Code Playgroud)

谢谢.

mysql int database-design biginteger auto-increment

43
推荐指数
2
解决办法
5万
查看次数

BIGINT UNSIGNED值超出范围

我收到了错误

BIGINT UNSIGNED值超出范围中的'(1301980250 - ..mydb )'news_articlesdate

当我运行查询

SELECT *, ((1 / log(1301980250 - date)) * 175) as weight FROM news_articles ORDER BY weight;
Run Code Online (Sandbox Code Playgroud)

删除ORDER BY条件也会删除错误.我该如何解决?

更新:日期字段包含unix时间戳(例如:1298944082).将MySQL从5.0.x升级到5.5.x后,错误开始出现

有什么帮助吗?

mysql biginteger

39
推荐指数
3
解决办法
5万
查看次数

BigInt 的对数

有没有办法在 JavaScript 中获取BigInt的对数?

对于普通数字,您可以使用以下代码:

const largeNumber = 1000;
const result = Math.log(largeNumber);
Run Code Online (Sandbox Code Playgroud)

但是,我需要使用阶乘数字,可能高于 170!,因此常规数字类型不起作用。Math.log不适用于 BigInt。那么如何得到对数呢?

const largeNumber = BigInt(1000);
const result = ???
Run Code Online (Sandbox Code Playgroud)

javascript logarithm biginteger bigint

39
推荐指数
2
解决办法
4325
查看次数

Long vs BigInteger

据我了解,双方java.lang.Longjava.math.BigInteger可以容纳非常大的自然数.

我也知道Long的最大值,但BigInteger的最大值是多少?

除了容量之外,BigInteger在处理仍然落在Long范围内的一般大整数时会表现得更好吗?

唯一的考虑因素是:我的价值对于龙来说太大了吗?

java biginteger long-integer

33
推荐指数
1
解决办法
5万
查看次数

BigInteger相当于Swift?

在Swift中是否有与Java的BigInteger类相同的东西?我想在Swift中进行大型计算,正整数大于UInt64的最大数.处理这些数字的最佳方法是什么?

int largenumber biginteger swift

31
推荐指数
6
解决办法
2万
查看次数