Código
public class Factorizar { BigInteger primosBig[] = ArrayPrimos.ArrayPrimos(); // Crea una lista de arrays con los numeros primos que hay desde el 2 hasta el 1000000 para poder factorizar el BigInteger. ArrayList<BigInteger> almacenFactores = new ArrayList<>(); int cont1 = 0; int cont2 = 0; int certainty = 100; //Revisar el valor que toma el certanity. while (modulo != ONE) { if (modulo.isProbablePrime(certainty)) { almacenFactores.add(cont2, modulo); return almacenFactores; } if ((modulo.remainder(primosBig[cont1])) == ZERO) { modulo = modulo.divide(primosBig[cont1]); almacenFactores.add(cont2, primosBig[cont1]); cont1 = 0; cont2++; } else { cont1++; } } return almacenFactores; } }