Java >> Java tutorial >  >> Java

Java-eksponent | Power Operator | Eksempler

Java-eksponent metode math pow kan beregne eksponent. Math pow-metoden er ikke den eneste måde at gøre det på. Med din egen kodelogik kan du lave taleksponenter.

Du bruger Math.pow(a, b) til at beregne a^b . Hvor “b” er eksponent og den siger, hvor mange gange du skal bruge "a"-tallet i en multiplikation.

Eksponenter kaldes også potenser eller indekser.

Bemærk: Der er ingen eksponentoperator, men der er en metode i Math java-modulet.

Eksempel på Java-eksponentoperator

Simpel brugsmetode Math.pow(double a, double b) . Hvilket returnerer den dobbelte typeværdi af det første argument rejst til magten af ​​det andet argument. Se nedenstående eksempel på, hvordan du gør det.

import java.lang.Math;

public class Hello {

    public static void main(String args[])
    {
        double result = 0.0;
        result = Math.pow(8,3);

        System.out.println("Exponent Number is: " + result);
    }
}

Output: Eksponentnummer er:512.0

Java eksponent heltal | Tal

For at få heltalsværdien skal du gøre int støbning. Se nedenstående eksempel på det.

int intResult = (int) Math.pow(7, 3);

Følg denne vejledning til casting i java- Skriv Casting i Java

import java.lang.Math;

public class Hello {

    public static void main(String args[])
    {
        int result = 0;
        result = (int)(Math.pow(8,3));

        System.out.println("Exponent Number is: " + result);
    }
}

Output: Eksponentnummer er:512

Egen formel | anbefales ikke til stor magt

For eksempel i stedet for at skrive Math.pow(x, 2) skriv x * x eller Math.pow(x, 3) , bare skriv x * x * x.

For det samme øverste eksempel- resultat =9*9*9*9*9;

Det er ikke en god idé, hvis eksponentværdien er meget stor. For eksempel er eksponentværdien 1000. Så kan du ikke skrive den 1000 gange flere tal.

Lad os se andre måder- For-loop erklæring

Først skal du oprette en metode "myPow ” med 2 argumenter er det ene for basisværdi dobbelt og en anden værdieksponent heltal . Og returværdien er også dobbelt type.

public class Hello {

    public static void main(String args[]) {

        double base = 2;
        int exp = 3;
        double result = myPow(2, 3);

        System.out.println(result);
    }

    // Works only for b >= 1
    public static double myPow(double a, int b) {
        double res = 1;
        for (int i = 0; i < b; i++) {
            res *= a;
        }
        return res;
    }
}

Output: 8.0

Prøv Java math pow negativ eksponent

Det fungerer fint med nogle regler - hvis eksponenten er lige, er resultatet positivt, og hvis eksponenten er ulige, er resultatet en negativ værdi.

import java.lang.Math;

public class Hello {

    public static void main(String args[])
    {

        int resultN = (int)(Math.pow(-8,3)); // odd
        int resultP = (int)(Math.pow(-8,2)); // Even

        System.out.println("Negative: " + resultN);
        System.out.println("Positive: " + resultP);
    }
}

Output: Negativt:-512
Positivt:64

Sp:Sådan får du eksponenter uden at bruge math.pow til java

Svar: Ved at bruge en for loop kan du gøre det. Se nedenstående kode for det.

public static double myPow(double a, int b) {
        double res = 1;
        for (int i = 0; i < b; i++) {
            res *= a;
        }
        return res;
    }

Følg dette link for flere eksempler (java power operator) - Math Pow Java | Strøm ^ Operatørfunktion

Kommenter, hvis du er i tvivl og forslag.

Bemærk: Dette eksempel (projekt) er udviklet i IntelliJ IDEA 2018.2.6 (Community Edition)
JRE:11.0.1
JVM: OpenJDK 64-Bit Server VM af JetBrains s.r.o
macOS 10.14.1
Java version 11
Alle Eksempler på Java-eksponentoperator er i Java 11, så det kan ændre sig på forskelligt fra Java 9 eller 10 eller opgraderede versioner.


Java tag