Denne artikel vil uddybe metoderne til at sammenligne to 'BigDecimals' i Java.
Hvad er 'BigDecimal' i Java?
en ' BigDecimal ” i Java omfatter en 32-bit heltalsskala og bruges til at håndtere meget store og meget små flydende kommatal. Det ' vægt ” repræsenterer antallet af cifre til højre for decimaltegnet.
Hvordan sammenligner man to store decimaler i Java?
For at sammenligne to store decimaler i Java skal du anvende følgende fremgangsmåder:
Før du går til tilgangene, skal du sørge for at inkludere den nedenfor angivne pakke for at få adgang til ' matematik Klasse metoder:
importere java.math.* ;
Fremgangsmåde 1: Sammenlign to store decimaler i Java ved hjælp af 'compareTo()'-metoden
Det ' sammenligne med() ”-metoden sammenligner de to ” Store decimaler ' og returnerer resultatet baseret på følgende parametre:
Returneret resultat | Beregnet sammenligning |
---|---|
1 | Hvis den tidligere BigDecimal er større end den sidstnævnte BigDecimal. |
0 | I tilfælde af at den førstnævnte BigDecimal er lig med den sidstnævnte BigDecimal. |
-1 | Når førstnævnte BigDecimal er mindre end sidstnævnte BigDecimal. |
Denne metode kan anvendes til at sammenligne de to oprettede ' BigDecimal ' værdier og returnerer det tilsvarende resultat via ' hvis ellers ' udmelding.
Syntaks
offentlig int sammenligne med ( Objekt obj )
Ifølge denne syntaks, ' Objekt obj ” svarer til det objekt, der skal sammenlignes.
Eksempel
Nedenstående eksempel forklarer det diskuterede koncept:
offentlig klasse sammenligne stordecimal {offentlig statisk ugyldig vigtigste ( Snor args [ ] ) {
BigDecimal val1, val2 ;
val1 = ny BigDecimal ( '26326.04' ) ;
val2 = ny BigDecimal ( '22145.20' ) ;
hvis ( val1. sammenligne med ( val2 ) == 0 ) {
System . ud . println ( val1 + 'og' + val2 + 'er ligeværdige' ) ;
}
andet hvis ( val1. sammenligne med ( val2 ) == - 1 ) {
System . ud . println ( val1 + ' er mindre end ' + val2 ) ;
}
andet {
System . ud . println ( val1. sammenligne med ( val2 ) ) ;
System . ud . println ( val1 + ' er større end ' + val2 ) ;
}
I henhold til ovenstående kodelinjer skal du anvende følgende trin:
- Først og fremmest skal du oprette to ' Store decimaler ” have de angivne værdier.
- Tilknyt nu ' sammenligne med() ” metode med både de tildelte værdier og efter den opfyldte betingelse i hvis ”-udsagn, skal du logge den tilsvarende meddelelse.
- Bemærk: Betingelserne er specificeret ud fra metodens returnerede resultat for at få metoden til at fungere korrekt.
- Ligeledes er ' andet hvis ”-sætning specificerer den anden betingelse i betragtning af metodens returtype, dvs. -1 ”.
- Lav endelig ' andet ”-erklæring træder i kraft på begge de ovennævnte uopfyldte betingelser.
Produktion
I ovenstående resultat returnerede ' 1 ' angiver, at ' andet ” erklæring påberåbes.
Fremgangsmåde 2: Sammenlign to store decimaler i Java ved hjælp af 'equals()'-metoden
Det ' lige med() ' Java-metoden ' BigDecimal ” klasse bruges til at sammenligne BigDecimals for lighed baseret på værdi og skala. Denne metode kan implementeres til at anvende en kontrol på de store decimaler, der har en variation i deres skala.
Syntaks
offentlig boolesk lige med ( Objekt x )I denne syntaks, ' Objekt x ” svarer til det objekt, som denne BigDecimal skal sammenlignes med.
Eksempel
Lad os gennemgå følgende eksempel:
offentlig klasse sammenligne stordecimal2 {offentlig statisk ugyldig vigtigste ( Snor args [ ] ) {
BigDecimal val1, val2 ;
val1 = ny BigDecimal ( '205.0' ) ;
val2 = ny BigDecimal ( '205.00' ) ;
hvis ( val1. lige med ( val2 ) ) {
System . ud . println ( val1 + 'og' + val2 + 'er ligeværdige' ) ;
}
andet {
System . ud . println ( val1 + 'og' + val2 + 'er ikke lige' ) ;
}
} }
I henhold til ovenstående kode:
- Ligeledes skal du oprette to store decimaler med variation i deres skala.
- Bemærk: “ 0 ' er ikke lig med ' 2.00 ” sammenlignet med denne metode.
- Anvend derefter ' lige med() ' metode til at sammenligne de oprettede BigDecimaler og returnere det tilsvarende resultat via ' hvis ellers ' udmelding.
Produktion
I dette resultat kan det observeres, at både ' Store decimaler ” er ikke ens på grund af variation i skala.
Imidlertid fører følgende resultat til at gøre 'BigDecimals' lige:
Sådan kan du sammenligne to ' Store decimaler ” i Java.
Konklusion
en ' BigDecimal ” i Java omfatter en 32-bit heltalsskala. De to store decimaler i Java kan sammenlignes ved at anvende ' sammenligne med() ', eller den ' lige med() ' metoder. Den førstnævnte tilgang returnerer output baseret på den beregnede sammenligning. Sidstnævnte tilgang analyserer BigDecimal-værdierne baseret på de specificerede skalaer. Denne blog er guidet til at sammenligne de to 'BigDecimals' i Java.