Kaip palyginti du BigDecimals Java

Kaip Palyginti Du Bigdecimals Java



BigDecimal ” „Java“ klasė suteikia aritmetikos, mastelio valdymo, apvalinimo, palyginimo funkcijas ir kt. Be to, ji leidžia programuotojams išskirtinai tiksliai susidoroti su dideliais ir mažais slankiojo kablelio sveikaisiais skaičiais. Tai padeda pasiekti didesnį tikslumą per fiksuotą dešimtainių skaičių.

Šiame straipsnyje bus išsamiau aprašyti būdai, kaip palyginti du „BigDecimals“ „Java“.

Kas yra „BigDecimal“ Java?

A “ BigDecimal “ Java sudaro 32 bitų sveikųjų skaičių skalė ir naudojama labai dideliems ir labai mažiems slankiojo kablelio skaičiams tvarkyti. „ skalė “ reiškia skaitmenų skaičių kablelio dešinėje.







Kaip palyginti du „BigDecimals“ „Java“?

Norėdami palyginti du „BigDecimals“ „Java“, taikykite šiuos metodus:



Prieš eidami į metodus, būtinai įtraukite toliau pateiktą paketą, kad pasiektumėte ' matematika “ klasės metodai:



importuoti java.math.* ;

1 metodas: palyginkite du didelius dešimtainius „Java“ naudodami metodą „palyginti su()“

palyginti su() “ metodas lygina du “ BigDecimals “ ir pateikia rezultatą pagal šiuos parametrus:





Grąžintas rezultatas Skaičiuojamas palyginimas
1 Jei ankstesnis BigDecimal yra didesnis nei pastarasis BigDecimal.
0 Tuo atveju, kai buvęs BigDecimal yra lygus pastarajam BigDecimal.
-1 Kai buvęs BigDecimal yra mažesnis nei pastarasis BigDecimal.

Šis metodas gali būti taikomas norint palyginti du sukurtus BigDecimal “ reikšmes ir grąžinti atitinkamą rezultatą per „ jei/kitaip “ pareiškimas.

Sintaksė



viešas tarpt palyginti su ( Objektas obj )

Pagal šią sintaksę „ Objektas obj “ atitinka objektą, kurį reikia lyginti.

Pavyzdys

Toliau pateiktame pavyzdyje paaiškinama aptarta koncepcija:

viešas klasė palyginkite didžiąją dešimtainę {
viešas statinis tuštuma pagrindinis ( Styga args [ ] ) {
BigDecimal val1, val2 ;
pasirinkimas1 = naujas BigDecimal ( '26326.04' ) ;
val2 = naujas BigDecimal ( '22145.20' ) ;
jeigu ( pasirinkimas1. palyginti su ( val2 ) == 0 ) {
Sistema . išeiti . println ( pasirinkimas1 + 'ir' + val2 + 'yra lygūs' ) ;
}
Kitas jeigu ( pasirinkimas1. palyginti su ( val2 ) == - 1 ) {
Sistema . išeiti . println ( pasirinkimas1 + ' mažiau nei ' + val2 ) ;
}
Kitas {
Sistema . išeiti . println ( pasirinkimas1. palyginti su ( val2 ) ) ;
Sistema . išeiti . println ( pasirinkimas1 + 'yra didesnis nei' + val2 ) ;
}

Pagal aukščiau pateiktas kodo eilutes atlikite šiuos veiksmus:

  • Pirmiausia sukurkite du „ BigDecimals “ turinčios nurodytas vertybes.
  • Dabar susiekite „ palyginti su() “ metodą su priskirtomis reikšmėmis ir patenkinus sąlygą „ jeigu “, užregistruokite atitinkamą pranešimą.
  • Pastaba: Sąlygos nurodytos atsižvelgiant į gautą metodo rezultatą, kad metodas veiktų tinkamai.
  • Taip pat „ kitaip, jei ' sakinys nurodo kitą sąlygą, atsižvelgiant į metodo grąžinimo tipą, t. y. ' -1 “.
  • Galiausiai padarykite „ Kitas “ pareiškimas įsigalioja esant abiem aukščiau nurodytoms nepatenkintoms sąlygoms.

Išvestis

Aukščiau pateiktame rezultate grąžintas „ 1 “ reiškia, kad „ Kitas “ – pasitelkiamas teiginys.

2 metodas: palyginkite du didelius dešimtainius „Java“ naudodami metodą „lygu ()“

lygus () 'Java metodas' BigDecimal “ klasė naudojama norint palyginti BigDecimals lygybei pagal vertę ir mastelį. Šis metodas gali būti įgyvendintas norint patikrinti, ar BigDecimals skiriasi savo masteliu.

Sintaksė

viešas loginis lygus ( Objektas x )

Šioje sintaksėje „ Objektas x “ atitinka objektą, su kuriuo reikia palyginti šį BigDecimal.

Pavyzdys

Apžvelgsime šį pavyzdį:

viešas klasė palyginkite didžiąją dešimtainę 2 {
viešas statinis tuštuma pagrindinis ( Styga args [ ] ) {
BigDecimal val1, val2 ;
pasirinkimas1 = naujas BigDecimal ( '205,0' ) ;
val2 = naujas BigDecimal ( '205.00' ) ;
jeigu ( pasirinkimas1. lygus ( val2 ) ) {
Sistema . išeiti . println ( pasirinkimas1 + 'ir' + val2 + 'yra lygūs' ) ;
}
Kitas {
Sistema . išeiti . println ( pasirinkimas1 + 'ir' + val2 + 'nėra lygūs' ) ;
}
} }

Pagal aukščiau pateiktą kodą:

  • Taip pat sukurkite du „BigDecimals“, kurių skalė skiriasi.
  • Pastaba: 0 “ nėra lygus “ 2.00 val “, palyginti su šiuo metodu.
  • Po to pritaikykite „ lygus () “ metodą, kad palygintumėte sukurtus BigDecimals ir grąžintumėte atitinkamą rezultatą per „ jei/kitaip “ pareiškimas.

Išvestis

Iš šio rezultato galima pastebėti, kad tiek „ BigDecimals “ nėra vienodi dėl masto skirtumo.

Tačiau šie rezultatai lemia, kad „BigDecimals“ yra lygūs:

Štai kaip galite palyginti du ' BigDecimals “ Java.

Išvada

A “ BigDecimal “ Java sudaro 32 bitų sveikųjų skaičių skalė. Du BigDecimals „Java“ gali būti lyginami taikant „ palyginti su() ', arba ' lygus () “ metodai. Pirmasis metodas grąžina produkciją, pagrįstą apskaičiuotu palyginimu. Pastarasis metodas analizuoja BigDecimal reikšmes pagal nurodytas skales. Šis tinklaraštis skirtas palyginti du „BigDecimals“ „Java“.