Tämä artikkeli käsittelee lähestymistapoja kahden 'BigDecimaalin' vertailuun Javassa.
Mikä on 'BigDecimal' Javassa?
A ' BigDecimal ” Javassa sisältää 32-bittisen kokonaislukuasteikon ja sitä käytetään käsittelemään erittäin suuria ja hyvin pieniä liukulukuja. ' mittakaavassa ” edustaa desimaalipilkun oikealla puolella olevien numeroiden määrää.
Kuinka vertailla kahta suurdesimaalilukua Javassa?
Voit verrata kahta BigDecimaaleja Javassa käyttämällä seuraavia lähestymistapoja:
Ennen kuin siirryt lähestymistapoihin, muista sisällyttää alla oleva paketti päästäksesi ' matematiikka ”luokan menetelmät:
tuonti java.math.* ;
Lähestymistapa 1: Vertaa kahta suurdesimaalilukua Javassa käyttämällä 'compareTo()'-menetelmää
' vertaa() 'menetelmä vertaa näitä kahta' BigDecimals ' ja palauttaa tuloksen seuraavien parametrien perusteella:
Palautettu tulos | Laskennallinen vertailu |
---|---|
1 | Jos edellinen BigDecimal on suurempi kuin jälkimmäinen BigDecimal. |
0 | Jos entinen BigDecimal on yhtä suuri kuin jälkimmäinen BigDecimal. |
-1 | Kun entinen BigDecimal on pienempi kuin jälkimmäinen BigDecimal. |
Tätä menetelmää voidaan käyttää vertaamaan kahta luotua ' BigDecimal ' arvot ja palauta vastaava tulos '' tai muuten ”lausunto.
Syntaksi
julkinen int vertaa ( Esine obj )
Tämän syntaksin mukaan ' Objektiobjekti ” vastaa vertailtavaa kohdetta.
Esimerkki
Alla oleva esimerkki selittää käsiteltyä käsitettä:
julkinen luokkaa vertaa isodesimaalilukua {julkinen staattinen mitätön pää ( merkkijono args [ ] ) {
BigDecimal arvo1, val2 ;
valinta 1 = Uusi BigDecimal ( '26326.04' ) ;
val2 = Uusi BigDecimal ( '22145.20' ) ;
jos ( valinta 1. vertaa ( val2 ) == 0 ) {
Järjestelmä . ulos . println ( valinta 1 + ' ja ' + val2 + ' ovat tasa-arvoisia' ) ;
}
muu jos ( valinta 1. vertaa ( val2 ) == - 1 ) {
Järjestelmä . ulos . println ( valinta 1 + ' on vähemmän kuin ' + val2 ) ;
}
muu {
Järjestelmä . ulos . println ( valinta 1. vertaa ( val2 ) ) ;
Järjestelmä . ulos . println ( valinta 1 + ' on suurempi kuin ' + val2 ) ;
}
Suorita seuraavat vaiheet yllä olevien koodirivien mukaisesti:
- Luo ensin kaksi ' BigDecimals ” jolla on ilmoitetut arvot.
- Yhdistä nyt ' vertaa() ' -menetelmällä sekä määritetyillä arvoilla että täyttyessä ' jos ”-lauseessa kirjaa vastaava viesti.
- Huomautus: Ehdot määritellään menetelmän palauttaman tuloksen perusteella, jotta menetelmä toimii oikein.
- Samoin ' muuten jos '-lause määrittää toisen ehdon menetelmän palautustyypin mukaan, eli ' -1 ”.
- Tee lopuksi ' muu ”-lausunto tulee voimaan molemmissa yllä olevissa tyydyttämättömissä olosuhteissa.
Lähtö
Yllä olevassa tuloksessa palautettiin ' 1 ' osoittaa, että ' muu ”lausuntoa vedotaan.
Lähestymistapa 2: Vertaa kahta suurdesimaalilukua Javassa käyttämällä 'equals()'-menetelmää
' on yhtä suuri () 'Javan menetelmä' BigDecimal ” -luokkaa hyödynnetään BigDecimaalien vertailuun arvon ja mittakaavan tasa-arvoon. Tämä menetelmä voidaan toteuttaa tarkistamaan BigDecimals, joiden asteikko vaihtelee.
Syntaksi
julkinen boolean on yhtä suuri ( Esine x )Tässä syntaksissa ' Objekti x ” vastaa objektia, johon tätä BigDecimaalia on verrattava.
Esimerkki
Katsotaanpa seuraavaa esimerkkiä:
julkinen luokkaa vertaa iso desimaali2 {julkinen staattinen mitätön pää ( merkkijono args [ ] ) {
BigDecimal arvo1, val2 ;
valinta 1 = Uusi BigDecimal ( '205.0' ) ;
val2 = Uusi BigDecimal ( '205.00' ) ;
jos ( valinta 1. on yhtä suuri ( val2 ) ) {
Järjestelmä . ulos . println ( valinta 1 + ' ja ' + val2 + ' ovat tasa-arvoisia' ) ;
}
muu {
Järjestelmä . ulos . println ( valinta 1 + ' ja ' + val2 + 'eivät ole tasa-arvoisia' ) ;
}
} }
Yllä olevan koodin mukaan:
- Luo samalla tavalla kaksi BigDecimaaleja, joiden asteikko vaihtelee.
- Huomautus: ' 0 'ei ole sama kuin' 2.00 ” verrattuna tähän menetelmään.
- Käytä sen jälkeen ' on yhtä suuri () ' -menetelmää luotujen BigDecimaalien vertailuun ja vastaavan tuloksen palauttamiseksi ' tai muuten ”lausunto.
Lähtö
Tässä tuloksessa voidaan havaita, että sekä ' BigDecimals ” eivät ole samanarvoisia mittakaavan vaihtelun vuoksi.
Seuraava tulos kuitenkin johtaa siihen, että 'BigDecimals' on yhtä suuri:
Näin voit verrata kahta ' BigDecimals 'Javalla.
Johtopäätös
A ' BigDecimal ” Javassa sisältää 32-bittisen kokonaislukuasteikon. Javassa olevia kahta BigDecimaaleja voidaan verrata käyttämällä ' vertaa() ', tai ' on yhtä suuri () ”menetelmiä. Edellinen lähestymistapa palauttaa tuotoksen lasketun vertailun perusteella. Jälkimmäinen lähestymistapa analysoi BigDecimal-arvot määritettyjen asteikkojen perusteella. Tämä blogi on opastettu vertaamaan kahta 'BigDecimals' -lukua Javassa.