Tag: biginteger

如何保存/加载BigInteger数组

我想在SharedPreferences中保存/加载BigInteger数组。 如何做呢? 例如,对于以下数组: private BigInteger[] dataCreatedTimes = new BigInteger[20];

BigInteger – > byte – > Biginteger。 看起来相等,但如果声明失败

我正在玩我为自己存储公钥的想法。 为此,我需要在某种变量中转换BigInteger,然后从该值重新创建BigInteger。 我已经搜索了Stackoverflow以找到执行此操作的最佳方法是使用byte []。 这是我在Eclipse中的代码: import java.math.BigInteger; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.interfaces.RSAPublicKey; public class Vaja2 { public static void main(String[] args){ try { // Create RSA Keypair (to obtain a BigInteger) KeyPairGenerator kpg = KeyPairGenerator.getInstance(“RSA”); kpg.initialize(1024); KeyPair keypair = kpg.generateKeyPair(); // Extract the public key RSAPublicKey publicKey = (RSAPublicKey) keypair.getPublic(); // Get the public […]

Fibonacci计算器与BigIntegers

我正在做一个家庭作业项目,我必须让用户输入一个数字,然后计算机将斐波纳契数字吐出一个。 我通常可以用int值来做到这一点,除了对于这个程序,我需要使用BigInteger类型,因为int,long,double等类型太小而不能保存我需要的值。 所以,这是我得到的代码。 问题是它不打印它应该的数字。 我的import: import java.math.*; import java.util.Scanner; 其余的代码: public static void main(String args[]) { //input to print Fibonacci series up to how many numbers System.out.println(“Enter number up to which Fibonacci series to print: “); BigInteger i = BigInteger.valueOf(new Scanner(System.in).nextLong()); System.out.println(“First ” + i + ” Fibonacci numbers: “); //printing Fibonacci series upto number […]

如何将BigInteger转换为科学记数法字符串并返回?

我想将BigInteger数转换为像1.86e + 6这样的小型科学符号,并再次将该科学符号转换为Java中的BigInteger数。 请帮忙。

BigDecimal和BigInteger的限制是什么?

我在一个程序中将两个巨大的BigInteger值相乘。 它失败了。 BigInteger和BigDecimal的限制是什么?

将BigInteger存储到Mysql中

由于mathematica约束,我将使用BigInteger类来表示值。 经过一些计算后,我想将结果(由2x BigInteger实例给出)存储到Mysql中… 存储此类对象的最佳数据类型是什么? 我在考虑使用Blob存储这些结果的二进制格式(128位)? 但我想避免不必要的类型转换。

打印非常大的BigIntegers

我试图找出与Java 7 x64中的BigIntegers相关的以下问题。 我试图计算一个极高功率的数字。 代码如下,然后是问题描述。 import java.math.BigInteger; public class main { public static void main(String[] args) { // Demo calculation; Desired calculation: BigInteger(“4096”).pow(800*600) BigInteger images = new BigInteger(“2”).pow(15544); System.out.println( “The number of possible 16 bpc color 800×600 images is: ” + images.toString()); } } 我遇到打印此操作结果的问题。 当此代码执行时,它会打印消息,但不会打印images.toString()的值。 为了隔离问题,我开始计算2的幂,而不是在该行的注释中列出的所需计算。 在我测试过的两个系统上, 2^15544是触发问题的最小计算; 2^15543工作正常。 我没有接近达到主机系统的内存限制,我不相信我甚至接近VM限制(无论如何运行VM参数-Xmx1024M -Xms1024M都没有效果)。 在互联网上寻找答案之后,我开始怀疑我在BigInteger或String遇到限制,这些限制与这些类型用于内部数据存储的数组的最大大小( Integer.MAX_VALUE )有关。 […]

BigInteger会不会溢出?

API文档说 有关溢出的规范中的所有细节都将被忽略,因为BigIntegers的大小可以根据操作的结果进行调整。 这是否意味着假设您有足够的可用内存,BigInteger永远不会溢出? 如果是这样,为什么我们让一些“类型”溢出而一些不会? 随着语言的发展,它是否会偏向程序员隐藏溢出机制的类型?

在Java中将BigInteger转换为Shorter String

我正在寻找一种方法将BigInteger转换为非常短的String(尽可能短)。 转换需要是可逆的。 在这种情况下,转换的安全性并不是什么大问题。 有人会有他们如何解决这个问题的建议或样本吗?

如何在不进行模运算的情况下将Java BigInteger提升为BigInteger的强大function?

我正在做一些大整数计算,我需要将BigInteger提升到另一个BigInteger的强大function。 .pow()方法可以实现我想要的,但是将int值作为参数。 .modPow方法将BigInteger作为参数,但我不希望答案与我正在尝试计算的值一致。 我的BigInteger指数太大而无法表示为int,有人可以建议一种解决此限制的方法吗?