Kā salīdzināt divus lielos decimālos skaitļus Java

Ka Salidzinat Divus Lielos Decimalos Skaitlus Java



' BigDecimal ” klase Java nodrošina aritmētiku, mēroga pārvaldību, noapaļošanu, salīdzināšanas funkcijas utt. Papildus tam tā ļauj programmētājiem ar izcilu precizitāti tikt galā ar lieliem un maziem veseliem skaitļiem ar peldošo komatu. Tas palīdz sasniegt lielāku precizitāti, salīdzinot ar fiksēto decimāldaļu skaitu.

Šajā rakstā tiks detalizēti aprakstītas pieejas, kā salīdzināt divus “lielos decimālos” Java.

Kas ir “BigDecimal” Java valodā?

A ' BigDecimal ” Java satur 32 bitu veselu skaitļu skalu un tiek izmantots, lai apstrādātu ļoti lielus un ļoti mazus peldošā komata skaitļus. ' mērogs ” apzīmē ciparu skaitu pa labi no komata.







Kā salīdzināt divus lielos decimālos skaitļus Java?

Lai salīdzinātu divus BigDecimals Java, izmantojiet šādas pieejas:



Pirms dodaties uz pieejām, noteikti iekļaujiet tālāk sniegto paketi, lai piekļūtu “ matemātika ” klases metodes:



imports java.math.* ;

1. pieeja: salīdziniet divus lielos decimālskaitļus Java, izmantojot metodi “comareTo()”

' Salīdzinot ar() metode salīdzina abus BigDecimals ” un atgriež rezultātu, pamatojoties uz šādiem parametriem:





Atgrieztais rezultāts Aprēķinātais salīdzinājums
1 Ja iepriekšējais BigDecimal ir lielāks par pēdējo BigDecimal.
0 Gadījumā, ja bijušais BigDecimal ir vienāds ar pēdējo BigDecimal.
-1 Kad bijušais BigDecimal ir mazāks par pēdējo BigDecimal.

Šo metodi var izmantot, lai salīdzinātu divus izveidotos ' BigDecimal ” vērtības un atgriezt atbilstošo rezultātu, izmantojot “ ja/citādi ' paziņojums, apgalvojums.

Sintakse



publiski starpt Salīdzinot ar ( Objekts obj )

Saskaņā ar šo sintaksi ' Objekts obj ” atbilst objektam, kas jāsalīdzina.

Piemērs

Tālāk sniegtais piemērs izskaidro apspriesto koncepciju:

publiski klasē salīdziniet lielo decimāldaļu {
publiski statisks nederīgs galvenais ( Stīga args [ ] ) {
BigDecimal val1, val2 ;
izvēle 1 = jauns BigDecimal ( '26326.04' ) ;
val2 = jauns BigDecimal ( '22145.20' ) ;
ja ( izvēle 1. Salīdzinot ar ( val2 ) == 0 ) {
Sistēma . ārā . println ( izvēle 1 + ' un ' + val2 + 'ir vienādi' ) ;
}
cits ja ( izvēle 1. Salīdzinot ar ( val2 ) == - 1 ) {
Sistēma . ārā . println ( izvēle 1 + 'ir mazāks par' + val2 ) ;
}
cits {
Sistēma . ārā . println ( izvēle 1. Salīdzinot ar ( val2 ) ) ;
Sistēma . ārā . println ( izvēle 1 + ' ir labāks par ' + val2 ) ;
}

Saskaņā ar iepriekš minētajām koda rindām veiciet šādas darbības:

  • Vispirms izveidojiet divus ' BigDecimals ” ar norādītajām vērtībām.
  • Tagad saistiet “ Salīdzinot ar() ” metodi gan ar piešķirtajām vērtībām, gan ar izpildītu nosacījumu sadaļā “ ja ” paziņojumā, reģistrējiet atbilstošo ziņojumu.
  • Piezīme: Nosacījumi tiek noteikti, pamatojoties uz metodes atgriezto rezultātu, lai metode darbotos pareizi.
  • Tāpat “ citādi, ja ' paziņojums norāda citu nosacījumu, ņemot vērā metodes atgriešanas veidu, t.i., ' -1 ”.
  • Visbeidzot izveidojiet ' cits ” paziņojums stājas spēkā abiem iepriekšminētajiem neapmierinātajiem nosacījumiem.

Izvade

Iepriekš minētajā iznākumā atgrieztais ' 1 ” norāda, ka “ cits ” tiek piesaukts paziņojums.

2. pieeja: salīdziniet divus lielos decimālskaitļus Java, izmantojot metodi “vienāds()”

' vienāds () 'Java metode' BigDecimal ” klase tiek izmantota, lai salīdzinātu BigDecimals vienlīdzībai, pamatojoties uz vērtību un mērogu. Šo metodi var ieviest, lai pārbaudītu BigDecimals, kuru skala ir atšķirīga.

Sintakse

publiski Būla vienāds ( Objekts x )

Šajā sintaksē ' Objekts x ” atbilst objektam, ar kuru šis BigDecimal ir jāsalīdzina.

Piemērs

Apskatīsim šādu piemēru:

publiski klasē salīdzināt lielo decimāldaļu2 {
publiski statisks nederīgs galvenais ( Stīga args [ ] ) {
BigDecimal val1, val2 ;
izvēle 1 = jauns BigDecimal ( '205.0' ) ;
val2 = jauns BigDecimal ( '205.00' ) ;
ja ( izvēle 1. vienāds ( val2 ) ) {
Sistēma . ārā . println ( izvēle 1 + ' un ' + val2 + 'ir vienādi' ) ;
}
cits {
Sistēma . ārā . println ( izvēle 1 + ' un ' + val2 + 'nav vienādi' ) ;
}
} }

Saskaņā ar iepriekš minēto kodu:

  • Tāpat izveidojiet divus BigDecimals, kuru mērogs atšķiras.
  • Piezīme: ' 0 'nav vienāds ar' 2.00 ”, salīdzinot ar šo metodi.
  • Pēc tam izmantojiet ' vienāds () ” metodi, lai salīdzinātu izveidotos BigDecimals un atgrieztu atbilstošo rezultātu, izmantojot ja/citādi ' paziņojums, apgalvojums.

Izvade

Šajā iznākumā var novērot, ka gan ' BigDecimals ” nav vienādi mēroga atšķirību dēļ.

Tomēr tālāk norādītā rezultāta rezultātā “BigDecimals” ir vienādas:

Tādā veidā jūs varat salīdzināt divus ' BigDecimals ” Java valodā.

Secinājums

A ' BigDecimal ” Java satur 32 bitu veselu skaitļu skalu. Divus Java BigDecimals var salīdzināt, izmantojot “ Salīdzinot ar() ', vai ' vienāds () ' metodes. Iepriekšējā pieeja atgriež produkciju, pamatojoties uz aprēķināto salīdzinājumu. Pēdējā pieeja analizē BigDecimal vērtības, pamatojoties uz norādītajām skalām. Šis emuārs ir paredzēts, lai salīdzinātu divus “BigDecimals” Java.