Ez a cikk a Java két „BigDecimal” összehasonlításának módszereit mutatja be.
Mi a „BigDecimal” a Java nyelven?
egy ' BigDecimal ” Java-ban egy 32 bites egész skálát tartalmaz, és nagyon nagy és nagyon kicsi lebegőpontos számok kezelésére használják. A ' skála ” a tizedesvesszőtől jobbra lévő számjegyek számát jelöli.
Hogyan hasonlítsunk össze két BigDecimális értéket a Java-ban?
Két BigDecimal összehasonlításához Javaban használja a következő megközelítéseket:
Mielőtt elkezdené a megközelítéseket, győződjön meg róla, hogy mellékelte az alábbi csomagot a „ matematika ” osztály metódusai:
import java.math.* ;
1. megközelítés: Hasonlítson össze két BigDecimális értéket a Java nyelvben a „compareTo()” módszerrel
A ' összehasonlítani() 'módszer összehasonlítja a kettőt' BigDecimals ” és a következő paraméterek alapján adja vissza az eredményt:
Visszatért Eredmény | Számított összehasonlítás |
---|---|
1 | Ha az előbbi BigDecimal nagyobb, mint az utóbbi BigDecimal. |
0 | Abban az esetben, ha az előbbi BigDecimal egyenlő az utóbbi BigDecimal-lel. |
-1 | Amikor az előbbi BigDecimal kisebb, mint az utóbbi BigDecimal. |
Ezzel a módszerrel összehasonlítható a két létrehozott „ BigDecimal ” értékeket, és visszaadja a megfelelő eredményt a „ ha más ' nyilatkozat.
Szintaxis
nyilvános int összehasonlítani ( Tárgy obj )
E szintaxis szerint ' Objektum obj ” az összehasonlítandó objektumnak felel meg.
Példa
Az alábbi példa elmagyarázza a tárgyalt koncepciót:
nyilvános osztály nagytizedes összehasonlítás {nyilvános statikus üres fő- ( Húr args [ ] ) {
BigDecimal érték1, érték2 ;
választás 1 = új BigDecimal ( '26326.04' ) ;
val2 = új BigDecimal ( '22145.20' ) ;
ha ( választás 1. összehasonlítani ( val2 ) == 0 ) {
Rendszer . ki . println ( választás 1 + 'és' + val2 + ' egyenlőek' ) ;
}
más ha ( választás 1. összehasonlítani ( val2 ) == - 1 ) {
Rendszer . ki . println ( választás 1 + ' kevesebb mint ' + val2 ) ;
}
más {
Rendszer . ki . println ( választás 1. összehasonlítani ( val2 ) ) ;
Rendszer . ki . println ( választás 1 + ' nagyobb, mint ' + val2 ) ;
}
A fenti kódsoroknak megfelelően hajtsa végre a következő lépéseket:
- Először is hozzon létre két ' BigDecimals ” a megadott értékekkel.
- Most társítsa a „ összehasonlítani() ” módszert a hozzárendelt értékekkel, és a „ ha ” utasítással naplózza a megfelelő üzenetet.
- Jegyzet: A feltételeket a módszer visszaadott eredménye alapján határozzák meg, hogy a módszer megfelelően működjön.
- Hasonlóképpen a „ különben ha ” utasítás a másik feltételt határozza meg, figyelembe véve a metódus visszatérési típusát, azaz: „ -1 ”.
- Végül készítse el a „ más ” nyilatkozat mindkét fenti nem kielégítő feltétel esetén lép hatályba.
Kimenet
A fenti eredményben a visszaadott ' 1 ' azt jelzi, hogy a ' más ” utasítást hívják meg.
2. megközelítés: Hasonlítson össze két nagytizedes számot a Java nyelvben az „egyenlő()” módszerrel
A ' egyenlő () 'A Java metódusa' BigDecimal ” osztályt használják a BigDecimals összehasonlítására az érték és a skála alapján. Ezt a módszert úgy lehet végrehajtani, hogy ellenőrizni tudja a nagy tizedesjegyeket, amelyek skálája eltérő.
Szintaxis
nyilvános logikai érték egyenlő ( Tárgy x )Ebben a szintaxisban a „ Objektum x ” megfelel annak az objektumnak, amellyel ezt a BigDecimal-t össze kell hasonlítani.
Példa
Tekintsük át a következő példát:
nyilvános osztály összehasonlítás nagytizedes2 {nyilvános statikus üres fő- ( Húr args [ ] ) {
BigDecimal érték1, érték2 ;
választás 1 = új BigDecimal ( '205.0' ) ;
val2 = új BigDecimal ( '205.00' ) ;
ha ( választás 1. egyenlő ( val2 ) ) {
Rendszer . ki . println ( választás 1 + 'és' + val2 + ' egyenlőek' ) ;
}
más {
Rendszer . ki . println ( választás 1 + 'és' + val2 + 'nem egyenlők' ) ;
}
} }
A fenti kód szerint:
- Hasonlóképpen, hozzon létre két nagytizedes számjegyet, amelyek léptéke eltérő.
- Jegyzet: ' 0 'nem egyenlő' 2.00 ” ehhez a módszerhez képest.
- Ezt követően alkalmazza a „ egyenlő () ” módszerrel összehasonlíthatja a létrehozott BigDecimaleket, és visszaadhatja a megfelelő eredményt a „ ha más ' nyilatkozat.
Kimenet
Ebben az eredményben megfigyelhető, hogy mind a „ BigDecimals ” nem egyenlőek a léptékbeli eltérések miatt.
A következő eredmény azonban azt eredményezi, hogy a „BigDecimals” egyenlővé válik:
Így lehet összehasonlítani a kettőt' BigDecimals ” Java nyelven.
Következtetés
egy ' BigDecimal ” a Java nyelvben egy 32 bites egész skálát tartalmaz. A Java két BigDecimális értéke összehasonlítható a „ összehasonlítani() ', vagy a ' egyenlő () ” módszerekkel. Az előbbi megközelítés a számított összehasonlítás alapján adja vissza a kimenetet. Ez utóbbi megközelítés a BigDecimal értékeket elemzi a megadott skálák alapján. Ez a blog a Java két „BigDecimális” számjegyének összehasonlítására szolgál.