Ce face Math.pow
Math.pow(a, b) calculează ab. Ambii parametri sunt double, deci poți calcula și pow(2, -1) = 0.5 sau pow(27, 1.0/3) = rădăcina cubică. Java nu are operator de putere: ^ înseamnă altceva (SAU exclusiv pe biți).
Rezultatul este mereu double. Pentru puteri întregi mici rezultatul este exact, dar valorile foarte mari își pierd precizia (un double are aproximativ 15–16 cifre semnificative). Pentru puteri întregi cu verificare de overflow folosește Math.powExact.
Parametri
| Parametru | Descriere |
|---|---|
baza |
Numărul ridicat la putere. |
exponent |
Puterea. |
Ce returnează
Un double. NaN pentru baze negative cu exponent fracționar, Infinity la depășire.
Exemple
Exemplul 1: Puteri diverse
public class Main {
public static void main(String[] args) {
System.out.println(Math.pow(2, 10));
System.out.println(Math.pow(2, -2));
System.out.println(Math.pow(9, 0.5));
System.out.println(Math.pow(-8, 1.0 / 3));
System.out.println(2 ^ 10);
System.out.println((long) Math.pow(10, 9));
}
}
Rezultat
1024.0
0.25
3.0
NaN
8
1000000000
Exemplul 2: Dobânda compusă la un depozit
public class Main {
public static void main(String[] args) {
double suma = 10_000;
double dobanda = 0.06;
for (int ani = 1; ani <= 5; ani += 2) {
double final_ = suma * Math.pow(1 + dobanda, ani);
System.out.printf("După %d ani: %.2f lei%n", ani, final_);
}
}
}
Rezultat
După 1 ani: 10600.00 lei
După 3 ani: 11910.16 lei
După 5 ani: 13382.26 lei
Greșeli frecvente
- Scrii
x ^ 2pentru pătrat. Foloseștex * xsauMath.pow(x, 2). - Calculezi rădăcina cubică a unui număr negativ cu
pow(x, 1.0/3): rezultatul esteNaN. FoloseșteMath.cbrt. - Scrii
Math.pow(8, 1/3):1/3este împărțire întreagă și dă 0, deci rezultatul este 1.0.
Comenzi înrudite
Math.powExact: Putere și înmulțire întreagă exactă (Java 25): rezultat int/long sau ArithmeticException la overflow, inclusiv pentru numere fără semn.Math.sqrt: sqrt() calculează rădăcina pătrată, cbrt() rădăcina cubică (care funcționează și pentru numere negative).Math.exp: exp(x) calculează eˣ; expm1(x) calculează eˣ − 1 precis chiar și pentru x foarte apropiat de 0.Math: Clasa cu funcții matematice gata făcute: rotunjiri, puteri, radicali, trigonometrie, minim/maxim și calcule întregi sigure.