【发布时间】:2019-05-11 00:59:47
【问题描述】:
我目前遇到一个关于将整数数组组合成整数的问题。
我在 Way to combine integer array to a single integer variable? 上查看了其他几种方法,但我仍然不明白为什么会遇到错误。
我的目标是转弯:
[6, 2, 3, 3, 8, 7, 7, 7, 0, 1, 6]
进入
62338777016
它目前在给定较小的整数数组时有效,例如:
[1, 3, 4, 4]
-> 1344
一旦元素数量达到 10,它就会开始崩溃。 有人有可能的解决方案吗?
【问题讨论】:
-
如果您的数字大于 Integer.MAX_VALUE,则必须使用 Long 或 BigInteger。
-
MAX_INT = 2147483647
-
我可以使用 longs,但如果我使用 bigInteger,我该怎么做?
-
您超出了最大整数限制。因此,您看到您的解决方案正在崩溃。正如 Eran 建议的那样,使用更好的数据类型,它支持更广泛的范围。
-
有人可以给我一个关于在这种情况下如何使用 BigIntegers 的例子吗?我读过一些关于 BigIntegers 的文章,似乎它们限制了太多的功能
标签: java arrays concatenation