Может быть

аюсь сравнить, если значение одного BigInteger (base)> равно значению другого BigInteger (prime), и если значение 'a' не равно единице. Если значение a не равно 1, оно должно выйти из цикла. Как мне их сравнить?

 Random ran = new Random();
    BigInteger prime = new BigInteger(16,ran);
    BigInteger base,a,one;
    one = new BigInteger("1");

    for (int i = 0; i < 65535; i++){

        while (base>prime){
            base = new BigInteger(16,ran);
        }
        a = base.modPow(prime.subtract(one),prime);
        System.out.println("a: "+a);    
        if (a != one){
            break;          
        }   
    }

Ответы на вопрос(2)

Ваш ответ на вопрос