Rumah  >  Artikel  >  Java  >  Bagaimana untuk membandingkan nilai BigDecimal dalam java

Bagaimana untuk membandingkan nilai BigDecimal dalam java

WBOY
WBOYke hadapan
2023-04-18 16:25:033377semak imbas

1 Menggunakan kaedah equals() bukan sahaja memerlukan nilai kedua-dua BigDecimals untuk sama, tetapi juga memerlukan skala() mereka untuk sama.

   BigDecimal d1 = new BigDecimal("123.45");
   BigDecimal d2 = new BigDecimal("123.45000");
   System.out.println(d1.equals(d2)); // false,因为scale不同
   System.out.println(d1.equals(d2.stripTrailingZeros())); // true,因为d2去除尾部0后scale变为2,与d1相同

2 Gunakan kaedah compareTo() untuk membandingkan saiz dua nombor, masing-masing mengembalikan -1, 1 dan 0 mengikut saiz dua nilai, yang bermaksud kurang daripada, lebih besar daripada dan masing-masing sama.

    import java.math.BigDecimal;
    public class Demo {
     public static void main(String[] args) {
      BigDecimal d1 = new BigDecimal("123.45");
      BigDecimal d2 = new BigDecimal("123.45000");
      BigDecimal d3 = new BigDecimal("123.40");
      System.out.println(d1.compareTo(d2)); // 0
      System.out.println(d1.compareTo(d3));//  1
      System.out.println(d3.compareTo(d2));// -1
     }
    }

Atas ialah kandungan terperinci Bagaimana untuk membandingkan nilai BigDecimal dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam