Java Math – ceil() Floor() Metoder

⚡ Smart sammanfattning

Java Math Class (java.lang.Math) tillhandahåller statiska metoder för absolutvärden, avrundning, tak, golv, minimum, maximum, exponential, logaritmiska och trigonometriska operationer. Dessa inbyggda funktioner ersätter manuell beräkning och möjliggör noggrann vetenskaplig beräkning direkt i vilken som helst Java programmet.

  • 🔢 Konstanter: Math.E (2.718281828459045) och Math.PI (3.141592653589793) exponeras som dubbla fält för logaritmiska och geometriska formler.
  • 📏 Avrundningsfamilj: abs() returnerar magnitude, round() ger närmaste heltal, medan ceil() och floor() avrundar uppåt och nedåt till heltal.
  • ⚖️ Jämförelsemetoder: min() och max() returnerar det minsta eller största av två numeriska argument för int-, long-, float- och double-typerna.
  • 📈 Avancerad matematik: exp(), log(), pow() och sqrt() hanterar exponential-, logaritmiska-, potens- och kvadratrotsberäkningar på dubbla värden.
  • 📐 Trigonometri: sin(), cos(), tan(), atan2(), toRadians() och toDegrees() arbetar i radianer för vinkelbaserade beräkningar.

Java Matematiska metoder för ceil() och floor()

Vad är det Java Mattekurs?

Java har haft flera avancerade användningsområden, inklusive arbete med komplexa beräkningar inom fysik, arkitektur och strukturdesign, arbete med kartor och motsvarande latituder och longituder, med mera.

Alla sådana tillämpningar kräver komplexa beräkningar och ekvationer som är mödosamma att utföra manuellt. Programmatiskt skulle sådana beräkningar innebära användning av logaritmer, trigonometri, exponentialekvationer och liknande operationer.

Java Matteklass

Nu kan du inte ha alla logg- eller trigonometritabeller hårdkodade någonstans i din applikation eller data. Uppgifterna skulle vara enorma och komplexa att underhålla.

Java erbjuder en mycket användbar kurs för detta ändamål. Det är matematiken Java klass (java.lang.Math). Den här klassen tillhandahåller metoder för att utföra operationer som exponential-, logaritm-, röttekvationer och trigonometriska ekvationer.

De två mest grundläggande elementen i matematik är "e" (basen för den naturliga logaritmen) och "pi" (förhållandet mellan en cirkels omkrets och dess diameter). Dessa två konstanter krävs ofta i ovanstående beräkningar och operationer. Därför är Math-klassen i Java ger dessa två konstanter som dubbla fält:

  • Math.E – ha ett värde av 2.718281828459045
  • Matematik.PI – ha ett värde av 3.141592653589793

Låt oss ta en titt på tabellen nedan som visar Grundläggande metoder och deras beskrivningar:

MetodBESKRIVNINGArgument
absReturnerar det absoluta värdet av argumentetDouble, flyta, int, lång
rundReturnerar närmaste heltal eller långtal (enligt argumentet)dubbel eller flytande
FÖRSE MED INNERTAKMatematisk takfunktion in Java returnerar det minsta heltal som är större än eller lika med argumentetDouble
golvJava floor-metoden returnerar det största heltal som är mindre än eller lika med argumentetDouble
minReturnerar det minsta av de två argumentenDouble, flyta, int, lång
maxReturnerar det största av de två argumentenDouble, flyta, int, lång

Nedan visas kodimplementeringen av ovanstående metoder.

Obs: Det finns inget behov av att explicit importera java.lang.Math, eftersom det importeras implicit. Alla dess metoder är statiska.

Heltalsvariabler:

int i1 = 27;
int i2 = -45;

Double (decimala) variabler:

double d1 = 84.6;
double d2 = 0.45;

Java Math abs()-metod med exempel

Ocuco-landskapet Java Math abs()-metoden returnerar det absoluta värdet av argumentet.

public class Guru99 {
 public static void main(String args[]) {
  int i1 = 27;
  int i2 = -45;
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Absolute value of i1: " + Math.abs(i1));
  System.out.println("Absolute value of i2: " + Math.abs(i2));
  System.out.println("Absolute value of d1: " + Math.abs(d1));
  System.out.println("Absolute value of d2: " + Math.abs(d2));
 }
}

Förväntad produktion:

Absolute value of i1: 27
Absolute value of i2: 45
Absolute value of d1: 84.6
Absolute value of d2: 0.45

Java Math.round()-metoden med Exempel

Math.round()-metoden i Java returnerar närmaste heltal eller långvärde enligt argumentet. Nedan följer ett exempel på Math.round Java metod.

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Round off for d1: " + Math.round(d1));
  System.out.println("Round off for d2: " + Math.round(d2));
 }
}

Förväntad produktion:

Round off for d1: 85
Round off for d2: 0

Java Math.ceil() och Math.floor() metod med exempel

Metoderna Math.ceil() och Math.floor() i Java används för att returnera det minsta respektive största heltalet som är större än eller lika med (respektive mindre än eller lika med) argumentet. Nedan visas matematikens golv och tak Java exempel.

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Ceiling of '" + d1 + "' = " + Math.ceil(d1));
  System.out.println("Floor of '" + d1 + "' = " + Math.floor(d1));
  System.out.println("Ceiling of '" + d2 + "' = " + Math.ceil(d2));
  System.out.println("Floor of '" + d2 + "' = " + Math.floor(d2));
 }
}

Vi får utdata från Math.ceil nedan. Java exempel.

Förväntad produktion:

Ceiling of '84.6' = 85.0
Floor of '84.6' = 84.0
Ceiling of '0.45' = 1.0
Floor of '0.45' = 0.0

Java Math.min() och Math.max() metod med exempel

Ocuco-landskapet Java Math.min()-metoden returnerar det minsta av de två argumenten, medan Math.max() returnerar det största av de två argumenten.

public class Guru99 {
 public static void main(String args[]) {
  int i1 = 27;
  int i2 = -45;
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Minimum out of '" + i1 + "' and '" + i2 + "' = " + Math.min(i1, i2));
  System.out.println("Maximum out of '" + i1 + "' and '" + i2 + "' = " + Math.max(i1, i2));
  System.out.println("Minimum out of '" + d1 + "' and '" + d2 + "' = " + Math.min(d1, d2));
  System.out.println("Maximum out of '" + d1 + "' and '" + d2 + "' = " + Math.max(d1, d2));
 }
}

Förväntad produktion:

Minimum out of '27' and '-45' = -45
Maximum out of '27' and '-45' = 27
Minimum out of '84.6' and '0.45' = 0.45
Maximum out of '84.6' and '0.45' = 84.6

Java Matematiska exponentiella och logaritmiska metoder

Utöver de grundläggande metoderna, Java Matematikklassen erbjuder även exponential- och logaritmiska operationer. Tabellen nedan visar dessa metoder och deras beskrivningar.

MetodBESKRIVNINGArgument
expReturnerar basen för den naturliga logaritmen (e) upphöjt till argumentets potensDouble
logReturnerar den naturliga loggen för argumentetdubbla
powTar 2 argument som indata och returnerar värdet av det första argumentet upphöjt till det andra argumentetDouble
golvJava matematisk golv returnerar det största heltal som är mindre än eller lika med argumentetDouble
sqrtReturnerar kvadratroten av argumentetDouble

Nedan visas kodimplementeringen av ovanstående metoder (samma variabler används som ovan).

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("exp(" + d2 + ") = " + Math.exp(d2));
  System.out.println("log(" + d2 + ") = " + Math.log(d2));
  System.out.println("pow(5, 3) = " + Math.pow(5.0, 3.0));
  System.out.println("sqrt(16) = " + Math.sqrt(16));
 }
}

Förväntad produktion:

exp(0.45) = 1.568312185490169
log(0.45) = -0.7985076962177716
pow(5, 3) = 125.0
sqrt(16) = 4.0

Java Matematiska trigonometriska metoder

Ocuco-landskapet Java Matematikklassen stöder ytterligare trigonometriska operationer. Tabellen nedan visar dessa metoder och deras beskrivningar.

MetodBESKRIVNINGArgument
syndReturnerar sinus för det angivna argumentetDouble
vagnReturnerar cosinus för det angivna argumentetdubbla
tanReturnerar tangenten till det angivna argumentetDouble
atan2Konverterar rektangulära koordinater (x, y) till polära koordinater (r, theta) och returnerar thetaDouble
till graderKonverterar argumentet till graderDouble
sqrtReturnerar kvadratroten av argumentetDouble
till RadianerKonverterar argumentet till radianerDouble

Standardargumenten är i radianer. Nedan visas kodimplementeringen.

public class Guru99 {
 public static void main(String args[]) {
  double angle_30 = 30.0;
  double radian_30 = Math.toRadians(angle_30);
  System.out.println("sin(30) = " + Math.sin(radian_30));
  System.out.println("cos(30) = " + Math.cos(radian_30));
  System.out.println("tan(30) = " + Math.tan(radian_30));
  System.out.println("Theta = " + Math.atan2(4, 2));
 }
}

Förväntad produktion:

sin(30) = 0.49999999999999994
cos(30) = 0.8660254037844387
tan(30) = 0.5773502691896257
Theta = 1.1071487177940904

Nu, med ovanstående metoder, kan du också designa din egen vetenskapliga miniräknare i Java.

Vanliga frågor

Java Math är en sista nyttoklass i java.lang som tillhandahåller statiska metoder för vanliga numeriska operationer, inklusive absolutvärde, avrundning, potenser, rötter, logaritmer och trigonometri, plus konstanterna Math.PI och Math.E.

Nej. Paketet java.lang importeras implicit, så Math-metoder är alltid tillgängliga. För terserkod, lägg till import static java.lang.Math.*; och anropa sqrt eller pow utan Math-prefixet.

Math.ceil returnerar det minsta heltalet som är större än eller lika med argumentet, medan Math.floor returnerar det största heltalet som är mindre än eller lika med argumentet. Båda returnerar en dubbel, så 4.2 blir 5.0 respektive 4.0.

Alla trigonometriska metoder förväntar sig radianer, inte grader. Konvertera först med Math.toRadians(30) innan sin, cos eller tan anropas. Annars behandlar metoden 30 som 30 radianer och returnerar ett helt annat värde.

Java har ingen dedikerad exponentoperator. Cimnoten ^ är bitvis XOR, inte exponentiering. Använd Math.pow(bas, exponent) för potenser. För heltalskvadrater är det snabbare att multiplicera x * x än att anropa Math.pow.

Använd Math.addExact närhelst ett spill skulle representera en verklig bugg, såsom räknare, finansiella summor eller indexaritmetik. Det utlöser ArithmeticException istället för wrap.ping tyst, vilket gör felaktiga resultat högljudda och lätta att upptäcka.

Maskininlärningsbibliotek i Java förlita dig på Math.exp för softmax, Math.log för korsentropiförlust, Math.sqrt för RMS-mått och Math.tanh för aktiveringsfunktioner. Vektormatematikramverk batchar sedan dessa anrop över arrayer för träning och inferens.

Ja. GitHub Copilot stöder anrop av matematikmetoder, radiankonverteringar och överflödessäker aritmetik från en kommentar som beskriver formeln. RevVisa varje förslag för numeriska kantfall såsom division med noll eller precisionsförlust före leveransping.

Sammanfatta detta inlägg med: