public Fraction pow()

in commons-numbers-fraction/src/main/java/org/apache/commons/numbers/fraction/Fraction.java [777:804]


    public Fraction pow(final int exponent) {
        if (exponent == 1) {
            return this;
        }
        if (exponent == 0) {
            return ONE;
        }
        if (isZero()) {
            if (exponent < 0) {
                throw new FractionException(FractionException.ERROR_ZERO_DENOMINATOR);
            }
            return ZERO;
        }
        if (exponent > 0) {
            return new Fraction(ArithmeticUtils.pow(numerator, exponent),
                                ArithmeticUtils.pow(denominator, exponent));
        }
        if (exponent == -1) {
            return this.reciprocal();
        }
        if (exponent == Integer.MIN_VALUE) {
            // MIN_VALUE can't be negated
            return new Fraction(ArithmeticUtils.pow(denominator, Integer.MAX_VALUE) * denominator,
                                ArithmeticUtils.pow(numerator, Integer.MAX_VALUE) * numerator);
        }
        return new Fraction(ArithmeticUtils.pow(denominator, -exponent),
                            ArithmeticUtils.pow(numerator, -exponent));
    }