Acest articol va detalia abordările pentru a compara două „BigDecimals” în Java.
Ce este „BigDecimal” în Java?
A ' BigDecimal ” în Java cuprinde o scară întreagă de 32 de biți și este utilizat pentru a gestiona numere în virgulă mobilă foarte mari și foarte mici. „ scară ” reprezintă numărul de cifre din dreapta punctului zecimal.
Cum se compară două zecimale mari în Java?
Pentru a compara două BigDecimals în Java, aplicați următoarele abordări:
Înainte de a merge la abordări, asigurați-vă că includeți pachetul furnizat mai jos pentru a accesa „ matematica ” metode de clasă:
import java.math.* ;
Abordarea 1: comparați două zecimale mari în Java folosind metoda „compareTo()”
„ compara cu() „Metoda compară cele două” Decimale mari ” și returnează rezultatul pe baza următorilor parametri:
Rezultatul returnat | Comparație calculată |
---|---|
1 | Dacă primul BigDecimal este mai mare decât cel din urmă BigDecimal. |
0 | În cazul în care primul BigDecimal este egal cu cel din urmă BigDecimal. |
-1 | Când primul BigDecimal este mai mic decât cel din urmă BigDecimal. |
Această metodă poate fi aplicată pentru a compara cele două create „ BigDecimal ” și returnează rezultatul corespunzător prin intermediul „ dacă/altfel ' afirmație.
Sintaxă
public int compara cu ( Obiect obj )
Conform acestei sintaxe, „ Obiect obj ” corespunde obiectului care trebuie comparat.
Exemplu
Exemplul de mai jos explică conceptul discutat:
public clasă compararebigdecimal {public static gol principal ( Şir argumente [ ] ) {
BigDecimal val1, val2 ;
alegere1 = nou BigDecimal ( '26326.04' ) ;
val2 = nou BigDecimal ( '22145.20' ) ;
dacă ( alegere1. compara cu ( val2 ) == 0 ) {
Sistem . afară . println ( alegere1 + ' și ' + val2 + ' sunt egale' ) ;
}
altfel dacă ( alegere1. compara cu ( val2 ) == - 1 ) {
Sistem . afară . println ( alegere1 + ' e mai puțin decât ' + val2 ) ;
}
altfel {
Sistem . afară . println ( alegere1. compara cu ( val2 ) ) ;
Sistem . afară . println ( alegere1 + ' este mai mare decât ' + val2 ) ;
}
Conform liniilor de cod de mai sus, aplicați următorii pași:
- În primul rând, creați două „ Decimale mari ” având valorile declarate.
- Acum, asociați „ compara cu() ” cu atât valorile atribuite, cât și cu condiția satisfăcută în „ dacă ” declarație, înregistrați mesajul corespunzător.
- Notă: Condițiile sunt specificate pe baza rezultatului returnat al metodei pentru ca metoda să funcționeze corect.
- La fel, „ altfel dacă ” instrucțiunea specifică cealaltă condiție luând în considerare tipul de returnare a metodei, adică “ -1 ”.
- În cele din urmă, faceți „ altfel ” declarația intră în vigoare în ambele condiții nesatisfăcute de mai sus.
Ieșire
În rezultatul de mai sus, a returnat „ 1 ” indică faptul că „ altfel ” este invocată declarația.
Abordarea 2: comparați două zecimale mari în Java folosind metoda „equals()”
„ este egal() „metoda Java” BigDecimal ” este utilizată pentru a compara BigDecimals pentru egalitate bazată pe valoare și scară. Această metodă poate fi implementată pentru a aplica o verificare asupra BigDecimals care au o variație în scara lor.
Sintaxă
public boolean egală ( Obiect X )În această sintaxă, „ Obiectul x ” corespunde obiectului cu care trebuie comparat acest BigDecimal.
Exemplu
Să trecem în revistă următorul exemplu:
public clasă comparebigdecimal2 {public static gol principal ( Şir argumente [ ] ) {
BigDecimal val1, val2 ;
alegere1 = nou BigDecimal ( „205.0” ) ;
val2 = nou BigDecimal ( '205.00' ) ;
dacă ( alegere1. egală ( val2 ) ) {
Sistem . afară . println ( alegere1 + ' și ' + val2 + ' sunt egale' ) ;
}
altfel {
Sistem . afară . println ( alegere1 + ' și ' + val2 + 'nu sunt egali' ) ;
}
} }
Conform codului de mai sus:
- De asemenea, creați două BigDecimals având variații în scara lor.
- Notă: „ 0 ” nu este egal cu ” 2.00 ” în comparație cu această metodă.
- După aceea, aplicați „ este egal() ” pentru a compara BigDecimals create și pentru a returna rezultatul corespunzător prin intermediul „ dacă/altfel ' afirmație.
Ieșire
În acest rezultat, se poate observa că atât „ Decimale mari ” nu sunt egale din cauza variației de scară.
Cu toate acestea, următorul rezultat duce la egalitatea „BigDecimals”:
Așa poți compara două” Decimale mari ” în Java.
Concluzie
A ' BigDecimal ” în Java cuprinde o scară întreagă de 32 de biți. Cele două BigDecimals din Java pot fi comparate prin aplicarea „ compara cu() ', sau ' este egal() ” metode. Prima abordare returnează rezultatul pe baza comparației calculate. Această din urmă abordare analizează valorile BigDecimal pe baza scalelor specificate. Acest blog este ghidat pentru a compara cele două „BigDecimals” în Java.