Bagaimana Membandingkan Dua BigDecimals di Java

Bagaimana Membandingkan Dua Bigdecimals Di Java



BigDecimal ” kelas di Java menyediakan aritmatika, manajemen skala, pembulatan, fungsi perbandingan, dll. Selain itu, ini memungkinkan pemrogram untuk mengatasi bilangan bulat floating-point besar dan kecil dengan presisi luar biasa. Ini membantu dalam mencapai lebih presisi atas jumlah desimal yang tetap.

Artikel ini akan menguraikan pendekatan untuk membandingkan dua 'BigDecimals' di Jawa.

Apa itu 'BigDecimal' di Jawa?

A ' BigDecimal ” di Java terdiri dari skala integer 32-bit dan digunakan untuk menangani angka floating-point yang sangat besar dan sangat kecil. “ skala ” mewakili jumlah digit di sebelah kanan titik desimal.







Bagaimana Membandingkan Dua BigDecimals di Jawa?

Untuk membandingkan dua BigDecimals di Java, terapkan pendekatan berikut:



Sebelum menuju ke pendekatan, pastikan untuk menyertakan paket yang disediakan di bawah untuk mengakses “ matematika ” metode kelas:



impor java.math.* ;

Pendekatan 1: Bandingkan Dua BigDecimal di Java Menggunakan Metode “compareTo()”.

dibandingkan dengan() ” metode membandingkan keduanya “ BigDecimal ” dan menampilkan hasil berdasarkan parameter berikut:





Hasil yang Dikembalikan Perbandingan yang Dihitung
1 Jika BigDecimal yang pertama lebih besar dari BigDecimal yang terakhir.
0 Dalam kasus BigDecimal sebelumnya sama dengan BigDecimal terakhir.
-1 Bila BigDecimal yang pertama lebih kecil dari BigDecimal yang terakhir.

Metode ini dapat diterapkan untuk membandingkan dua yang dibuat “ BigDecimal ” nilai dan kembalikan hasil yang sesuai melalui “ jika / lain ' penyataan.

Sintaksis



publik int dibandingkan dengan ( Obyek obj )

Menurut sintaks ini, “ objek objek ” sesuai dengan objek yang perlu dibandingkan.

Contoh

Contoh yang diberikan di bawah ini menjelaskan konsep yang dibahas:

publik kelas com.companybigdecimal {
publik statis ruang kosong utama ( Rangkaian argumen [ ] ) {
BigDecimal val1, val2 ;
pilihan1 = baru BigDecimal ( '26326,04' ) ;
val2 = baru BigDecimal ( '22145.20' ) ;
jika ( pilihan1. dibandingkan dengan ( val2 ) == 0 ) {
Sistem . keluar . println ( pilihan1 + ' Dan ' + val2 + ' adalah sama' ) ;
}
kalau tidak jika ( pilihan1. dibandingkan dengan ( val2 ) == - 1 ) {
Sistem . keluar . println ( pilihan1 + ' kurang dari ' + val2 ) ;
}
kalau tidak {
Sistem . keluar . println ( pilihan1. dibandingkan dengan ( val2 ) ) ;
Sistem . keluar . println ( pilihan1 + ' lebih besar dari ' + val2 ) ;
}

Sesuai dengan baris kode di atas, terapkan langkah-langkah berikut:

  • Pertama-tama, buat dua ' BigDecimal ” memiliki nilai yang dinyatakan.
  • Sekarang, kaitkan ' dibandingkan dengan() ” dengan kedua nilai yang diberikan, dan setelah kondisi terpenuhi di “ jika ” pernyataan, catat pesan yang sesuai.
  • Catatan: Kondisi ditentukan berdasarkan hasil yang dikembalikan metode untuk membuat metode berfungsi dengan baik.
  • Demikian pula, “ lain jika Pernyataan ” menentukan kondisi lain yang mempertimbangkan jenis pengembalian metode, yaitu, “ -1 ”.
  • Terakhir, buat “ kalau tidak ” pernyataan mulai berlaku pada kedua kondisi yang tidak terpenuhi di atas.

Keluaran

Dalam hasil di atas, yang dikembalikan ' 1 ” menunjukkan bahwa “ kalau tidak ” pernyataan dipanggil.

Pendekatan 2: Bandingkan Dua BigDecimal di Java Menggunakan Metode “sama dengan()”.

sama dengan() ” metode Java “ BigDecimal ” digunakan untuk membandingkan BigDecimals untuk kesetaraan berdasarkan nilai dan skala. Metode ini dapat diimplementasikan untuk menerapkan pemeriksaan pada BigDecimals yang memiliki variasi dalam skalanya.

Sintaksis

publik boolean sama ( Obyek X )

Dalam sintaks ini, “ Objek x ” sesuai dengan objek yang akan dibandingkan dengan BigDecimal ini.

Contoh

Mari kita tinjau contoh berikut:

publik kelas bandingkan desimal besar2 {
publik statis ruang kosong utama ( Rangkaian argumen [ ] ) {
BigDecimal val1, val2 ;
pilihan1 = baru BigDecimal ( '205.0' ) ;
val2 = baru BigDecimal ( '205.00' ) ;
jika ( pilihan1. sama ( val2 ) ) {
Sistem . keluar . println ( pilihan1 + ' Dan ' + val2 + ' adalah sama' ) ;
}
kalau tidak {
Sistem . keluar . println ( pilihan1 + ' Dan ' + val2 + 'tidak sama' ) ;
}
} }

Menurut kode di atas:

  • Demikian juga, buat dua BigDecimal yang memiliki variasi dalam skalanya.
  • Catatan: 0 ” tidak sama dengan “ 2.00 ” jika dibandingkan dengan metode ini.
  • Setelah itu, terapkan ' sama dengan() ” untuk membandingkan BigDecimals yang dibuat dan mengembalikan hasil yang sesuai melalui metode “ jika / lain ' penyataan.

Keluaran

Dalam hasil ini, dapat diamati bahwa kedua “ BigDecimal ” tidak sama karena variasi dalam skala.

Namun, hasil berikut menyebabkan 'BigDecimals' sama:

Begitulah cara Anda membandingkan dua ' BigDecimal ” di Jawa.

Kesimpulan

A ' BigDecimal ” di Java terdiri dari skala integer 32-bit. Dua BigDecimals di Java dapat dibandingkan dengan menerapkan “ dibandingkan dengan() ”, atau “ sama dengan() metode. Pendekatan sebelumnya mengembalikan output berdasarkan perbandingan yang dihitung. Pendekatan terakhir menganalisis nilai BigDecimal berdasarkan skala yang ditentukan. Blog ini dipandu untuk membandingkan dua 'BigDecimals' di Jawa.