Kuidas võrrelda kahte suurdetsimaalarvu Javas

Kuidas Vorrelda Kahte Suurdetsimaalarvu Javas



' BigDecimal ” klass Javas pakub aritmeetikat, mastaabihaldust, ümardamist, võrdlusfunktsioone jne. Lisaks võimaldab see programmeerijatel erakordse täpsusega toime tulla suurte ja väikeste ujukoma täisarvudega. See aitab saavutada fikseeritud kümnendkohtade arvu täpsust.

Selles artiklis käsitletakse Java kahe „suure kümnendarvu” võrdlemise meetodeid.

Mis on Javas 'BigDecimal'?

A ' BigDecimal ” sisaldab Javas 32-bitist täisarvude skaalat ja seda kasutatakse väga suurte ja väga väikeste ujukomaarvude käsitlemiseks. ' kaal ” tähistab kümnendkohast paremal olevate numbrite arvu.







Kuidas võrrelda kahte suurdetsimaalarvu Javas?

Java kahe BigDecimali võrdlemiseks kasutage järgmisi lähenemisviise.



Enne lähenemisviiside juurde suundumist lisage kindlasti allpool esitatud pakett, et pääseda juurde matemaatika ” klassi meetodid:



importida java.math.* ;

1. lähenemisviis: võrrelge Javas kahte suurdetsimaalarvu, kasutades meetodit 'compareTo()'

' võrdlema() 'meetod võrdleb neid kahte' Suured kümnendkohad ” ja tagastab tulemuse järgmiste parameetrite alusel:





Tagastatud tulemus Arvutatud võrdlus
1 Kui endine BigDecimal on suurem kui viimane BigDecimal.
0 Juhul, kui esimene BigDecimal on võrdne viimasega BigDecimal.
-1 Kui endine BigDecimal on väiksem kui viimane BigDecimal.

Seda meetodit saab kasutada kahe loodud ' BigDecimal ” väärtused ja tagastab vastava tulemuse käsu „ kui/muidu ” avaldus.

Süntaks



avalik int võrdlema ( Objekt obj )

Selle süntaksi järgi ' Objekt obj ” vastab võrdlemist vajavale objektile.

Näide

Allpool toodud näide selgitab käsitletud kontseptsiooni:

avalik klass võrrelge suure kümnendkohaga {
avalik staatiline tühine peamine ( String args [ ] ) {
BigDecimal val1, val2 ;
valik1 = uus BigDecimal ( '26326.04' ) ;
val2 = uus BigDecimal ( '22145.20' ) ;
kui ( valik1. võrdlema ( val2 ) == 0 ) {
Süsteem . välja . println ( valik1 + ' ja ' + val2 + 'on võrdsed' ) ;
}
muidu kui ( valik1. võrdlema ( val2 ) == - 1 ) {
Süsteem . välja . println ( valik1 + ' on vähem kui ' + val2 ) ;
}
muidu {
Süsteem . välja . println ( valik1. võrdlema ( val2 ) ) ;
Süsteem . välja . println ( valik1 + ' on suurem kui ' + val2 ) ;
}

Vastavalt ülaltoodud koodiridadele rakendage järgmisi samme:

  • Kõigepealt looge kaks ' Suured kümnendkohad ” millel on märgitud väärtused.
  • Nüüd seostage ' võrdlema() ” meetodit nii määratud väärtustega kui ka juhul, kui tingimus on täidetud kui ” avaldus, logi vastav teade.
  • Märge: Tingimused määratakse kindlaks meetodi tagastatud tulemuse põhjal, et meetod korralikult töötaks.
  • Samamoodi on ' muidu kui ' lause määrab teise tingimuse, võttes arvesse meetodi tagastustüüpi, st ' -1 ”.
  • Lõpuks tehke ' muidu ” avaldus jõustub mõlema ülaltoodud mitterahuldava tingimuse korral.

Väljund

Ülaltoodud tulemuses tagastati ' 1 ' näitab, et ' muidu ” avaldus.

2. lähenemisviis: võrrelge Java kahte suurkümnendarvu, kasutades meetodit 'võrdub ()'

' võrdub () 'Java meetod' BigDecimal ” klassi kasutatakse BigDecimals võrdlemiseks väärtusel ja skaalal põhineva võrdsuse jaoks. Seda meetodit saab rakendada, et kontrollida BigDecimals, mille skaala varieerub.

Süntaks

avalik tõeväärtus võrdub ( Objekt x )

Selles süntaksis ' Objekt x ” vastab objektile, millega seda BigDecimali tuleb võrrelda.

Näide

Teeme ülevaate järgmisest näitest:

avalik klass võrrelge suure kümnendkohaga2 {
avalik staatiline tühine peamine ( String args [ ] ) {
BigDecimal val1, val2 ;
valik1 = uus BigDecimal ( '205,0' ) ;
val2 = uus BigDecimal ( '205.00' ) ;
kui ( valik1. võrdub ( val2 ) ) {
Süsteem . välja . println ( valik1 + ' ja ' + val2 + 'on võrdsed' ) ;
}
muidu {
Süsteem . välja . println ( valik1 + ' ja ' + val2 + 'ei ole võrdsed' ) ;
}
} }

Vastavalt ülaltoodud koodile:

  • Samuti looge kaks BigDecimals, mille skaala varieerub.
  • Märge: 0 ' ei võrdu '' 2.00 ” võrreldes selle meetodiga.
  • Pärast seda rakendage ' võrdub () ' meetodit, et võrrelda loodud BigDecimals ja tagastada vastav tulemus ' kui/muidu ” avaldus.

Väljund

Selles tulemuses võib täheldada, et nii ' Suured kümnendkohad ” ei ole skaala varieerumise tõttu võrdsed.

Kuid järgmine tulemus muudab 'BigDecimals' võrdseks:

Nii saate võrrelda kahte ' Suured kümnendkohad ” Java keeles.

Järeldus

A ' BigDecimal ” sisaldab Javas 32-bitist täisarvude skaalat. Java kahte BigDecimali saab võrrelda, rakendades ' võrdlema() ”, või „ võrdub () ” meetodid. Esimene lähenemisviis tagastab väljundi arvutatud võrdluse põhjal. Viimane lähenemisviis analüüsib BigDecimali väärtusi määratud skaalade alusel. Seda ajaveebi juhendatakse Java kahe 'suure kümnendarvu' võrdlemiseks.