Den här artikeln kommer att utveckla metoderna för att jämföra två 'BigDecimals' i Java.
Vad är 'BigDecimal' i Java?
en ' BigDecimal ” i Java består av en 32-bitars heltalsskala och används för att hantera mycket stora och mycket små flyttal. den ' skala ” representerar antalet siffror till höger om decimalkomma.
Hur jämför man två stora decimaler i Java?
För att jämföra två stora decimaler i Java, använd följande metoder:
Innan du går till tillvägagångssätten, se till att inkludera nedanstående paket för att komma åt ' matematik ' klassmetoder:
importera java.math.* ;
Metod 1: Jämför två stora decimaler i Java med 'compareTo()'-metoden
den ' jämföra med() ”-metoden jämför de två ” Stora decimaler ” och returnerar resultatet baserat på följande parametrar:
Returnerat resultat | Beräknad jämförelse |
---|---|
1 | Om den förra BigDecimal är större än den senare BigDecimal. |
0 | Om den förra BigDecimal är lika med den senare BigDecimal. |
-1 | När den förra BigDecimal är mindre än den senare BigDecimal. |
Denna metod kan användas för att jämföra de två skapade ' BigDecimal ' värden och returnerar motsvarande resultat via ' om annat ' påstående.
Syntax
offentlig int jämföra med ( Objekt obj )
Enligt denna syntax, ' Objekt obj ” motsvarar det objekt som ska jämföras.
Exempel
Exemplet nedan förklarar det diskuterade konceptet:
offentlig klass jämför stordecimal {offentlig statisk tomhet huvud ( Sträng args [ ] ) {
BigDecimal val1, val2 ;
val1 = ny BigDecimal ( '26326.04' ) ;
val2 = ny BigDecimal ( '22145.20' ) ;
om ( val1. jämföra med ( val2 ) == 0 ) {
Systemet . ut . println ( val1 + 'och' + val2 + ' är jämlika' ) ;
}
annan om ( val1. jämföra med ( val2 ) == - 1 ) {
Systemet . ut . println ( val1 + ' är mindre än ' + val2 ) ;
}
annan {
Systemet . ut . println ( val1. jämföra med ( val2 ) ) ;
Systemet . ut . println ( val1 + ' är större än ' + val2 ) ;
}
Enligt ovanstående kodrader, tillämpa följande steg:
- Först av allt, skapa två ' Stora decimaler ” med de angivna värdena.
- Koppla nu till ' jämföra med() '-metoden med både de tilldelade värdena och om villkoret är uppfyllt i ' om ” uttalande, logga motsvarande meddelande.
- Notera: Villkoren specificeras utifrån metodens returnerade resultat för att få metoden att fungera korrekt.
- Likaså ' annat om ”-satsen anger det andra villkoret med hänsyn till metodens returtyp, dvs. -1 ”.
- Gör slutligen ' annan ” uttalande träder i kraft på båda ovanstående ouppfyllda villkor.
Produktion
I ovanstående resultat, returnerade ' 1 ' indikerar att ' annan ” uttalande åberopas.
Metod 2: Jämför två stora decimaler i Java med metoden 'equals()'.
den ' lika() 'metoden för Java' BigDecimal Klassen används för att jämföra BigDecimals för jämlikhet baserat på värde och skala. Denna metod kan implementeras för att tillämpa en kontroll på BigDecimals som har en variation i deras skala.
Syntax
offentlig booleskt lika ( Objekt x )I den här syntaxen ' Objekt x ” motsvarar det objekt som denna BigDecimal måste jämföras med.
Exempel
Låt oss överblicka följande exempel:
offentlig klass jämför stordecimal2 {offentlig statisk tomhet huvud ( Sträng args [ ] ) {
BigDecimal val1, val2 ;
val1 = ny BigDecimal ( '205.0' ) ;
val2 = ny BigDecimal ( '205.00' ) ;
om ( val1. lika ( val2 ) ) {
Systemet . ut . println ( val1 + 'och' + val2 + ' är jämlika' ) ;
}
annan {
Systemet . ut . println ( val1 + 'och' + val2 + 'är inte lika' ) ;
}
} }
Enligt ovanstående kod:
- På samma sätt, skapa två stora decimaler med variation i sin skala.
- Notera: ' 0 ' är inte lika med ' 2.00 ” jämfört med denna metod.
- Efter det, använd ' lika() '-metoden för att jämföra de skapade BigDecimalerna och returnera motsvarande resultat via ' om annat ' påstående.
Produktion
I detta resultat kan det observeras att både ' Stora decimaler ” är inte lika på grund av variation i skala.
Följande resultat leder dock till att 'BigDecimals' blir lika:
Det är så du kan jämföra två ' Stora decimaler ' i Java.
Slutsats
en ' BigDecimal ” i Java består av en 32-bitars heltalsskala. De två stora decimalerna i Java kan jämföras genom att använda ' jämföra med() ', eller den ' lika() ' metoder. Det tidigare tillvägagångssättet returnerar resultatet baserat på den beräknade jämförelsen. Det senare tillvägagångssättet analyserar BigDecimal-värdena baserat på de angivna skalorna. Den här bloggen är guidad för att jämföra de två 'BigDecimals' i Java.