كيفية المقارنة بين اثنين من BigDecimals في Java

Kyfyt Almqarnt Byn Athnyn Mn Bigdecimals Fy Java



ال ' BigDecimal 'فئة في Java توفر وظائف حسابية ، وإدارة مقياس ، وتقريب ، ومقارنة ، وما إلى ذلك. بالإضافة إلى ذلك ، فهي تمكن المبرمجين من التعامل مع الأعداد الصحيحة الكبيرة والصغيرة ذات الفاصلة العائمة بدقة استثنائية. هذا يساعد في تحقيق المزيد من الدقة على عدد ثابت من الكسور العشرية.

ستشرح هذه المقالة طرق مقارنة 'BigDecimals' في Java.

ما هو 'BigDecimal' في جافا؟

أ ' BigDecimal 'في Java يشتمل على مقياس عدد صحيح 32 بت ويستخدم للتعامل مع أرقام الفاصلة العائمة الكبيرة جدًا والصغيرة جدًا. ال ' حجم 'عدد الأرقام على يمين الفاصلة العشرية.







كيف تقارن بين اثنين من BigDecimals في Java؟

لمقارنة اثنين من BigDecimals في Java ، قم بتطبيق الطرق التالية:



قبل التوجه إلى المناهج ، تأكد من تضمين الحزمة المتوفرة أدناه للوصول إلى ' الرياضيات 'طرق الفصل:



يستورد java.math. * ؛

المقاربة 1: قارن بين اثنين من BigDecimals في Java باستخدام طريقة 'CompareTo ()'

ال ' قارن ب() 'تقارن الطريقة بين' BigDecimals 'وإرجاع النتيجة بناءً على المعلمات التالية:





عادت النتيجة مقارنة محسوبة
1 إذا كان BigDecimal السابق أكبر من BigDecimal الأخير.
0 في حالة كون BigDecimal السابق يساوي BigDecimal الأخير.
-1 عندما يكون BigDecimal السابق أقل من BigDecimal الأخير.

يمكن تطبيق هذه الطريقة للمقارنة بين ' BigDecimal 'وإرجاع النتيجة المقابلة عبر' إذا كان غير ذلك ' إفادة.

بناء الجملة



عام int قارن ب ( هدف الهدف )

وفقًا لهذه الصيغة ، ' كائن الكائن 'يتوافق مع الكائن الذي يجب مقارنته.

مثال

يوضح المثال الموضح أدناه المفهوم الذي تمت مناقشته:

عام فصل المقارنة {
عام ثابتة فارغ رئيسي ( خيط أرجس [ ] ) {
BigDecimal val1 ، val2 ؛
اختيار 1 = جديد BigDecimal ( '26326.04' ) ؛
val2 = جديد BigDecimal ( '22145.20' ) ؛
لو ( اختيار 1. قارن ب ( val2 ) == 0 ) {
نظام . خارج . println ( اختيار 1 + ' و ' + val2 + 'متساوون' ) ؛
}
آخر لو ( اختيار 1. قارن ب ( val2 ) == - 1 ) {
نظام . خارج . println ( اختيار 1 + ' اقل من ' + val2 ) ؛
}
آخر {
نظام . خارج . println ( اختيار 1. قارن ب ( val2 ) ) ؛
نظام . خارج . println ( اختيار 1 + ' أكبر من ' + val2 ) ؛
}

وفقًا لأسطر الكود أعلاه ، قم بتطبيق الخطوات التالية:

  • بادئ ذي بدء ، أنشئ اثنين من ' BigDecimals 'ذات القيم المعلنة.
  • الآن ، اربط ' قارن ب() 'مع كل من القيم المخصصة ، ووفقًا للشرط المستوفى في' لو '، سجل الرسالة المقابلة.
  • ملحوظة: يتم تحديد الشروط بناءً على نتيجة الطريقة التي تم إرجاعها لجعل الطريقة تعمل بشكل صحيح.
  • وبالمثل ، فإن ' وإلا إذا تحدد العبارة 'الشرط الآخر مع مراعاة نوع إرجاع الطريقة ، أي' -1 '.
  • أخيرًا ، اجعل ' آخر 'بيان يدخل حيز التنفيذ على كل من الشروط غير المستوفاة أعلاه.

انتاج |

في النتيجة أعلاه ، عاد ' 1 'يشير إلى أن' آخر تم استدعاء العبارة.

الطريقة 2: قارن بين اثنين من BigDecimals في Java باستخدام طريقة 'equals ()'

ال ' يساوي () 'طريقة جافا' BigDecimal يتم استخدام فئة ”لمقارنة BigDecimals للمساواة بناءً على القيمة والمقياس. يمكن تنفيذ هذه الطريقة لتطبيق فحص على BigDecimals التي لها تباين في مقياسها.

بناء الجملة

عام قيمة منطقية يساوي ( هدف x )

في بناء الجملة هذا ، ' الكائن x 'مع الكائن الذي يجب مقارنة BigDecimal به.

مثال

دعونا نلقي نظرة عامة على المثال التالي:

عام فصل قارن بين عشري كبير 2 {
عام ثابتة فارغ رئيسي ( خيط أرجس [ ] ) {
BigDecimal val1 ، val2 ؛
اختيار 1 = جديد BigDecimal ( '205.0' ) ؛
val2 = جديد BigDecimal ( '205.00' ) ؛
لو ( اختيار 1. يساوي ( val2 ) ) {
نظام . خارج . println ( اختيار 1 + ' و ' + val2 + 'متساوون' ) ؛
}
آخر {
نظام . خارج . println ( اختيار 1 + ' و ' + val2 + 'لا تساوي' ) ؛
}
} }

حسب الكود اعلاه:

  • وبالمثل ، قم بإنشاء اثنين من BigDecimals لهما تباين في مقياسهما.
  • ملحوظة: ' 0 ' لا يساوي ' 2.00 'عند مقارنتها بهذه الطريقة.
  • بعد ذلك ، قم بتطبيق ' يساوي () 'لمقارنة BigDecimals المُنشأة وإرجاع النتيجة المقابلة عبر' إذا كان غير ذلك ' إفادة.

انتاج |

في هذه النتيجة ، يمكن ملاحظة أن كلاً من ' BigDecimals 'لا تتساوى بسبب الاختلاف في الحجم.

ومع ذلك ، تؤدي النتيجة التالية إلى جعل 'BigDecimals' متساوية:

هذه هي الطريقة التي يمكنك من خلالها المقارنة بين ' BigDecimals 'في جافا.

خاتمة

أ ' BigDecimal 'في Java يشتمل على مقياس عدد صحيح 32 بت. يمكن مقارنة BigDecimals في Java من خلال تطبيق ' قارن ب() '، أو ال ' يساوي () ' طُرق. يُرجع الأسلوب السابق المخرجات بناءً على المقارنة المحسوبة. يحلل الأسلوب الأخير قيم BigDecimal بناءً على المقاييس المحددة. تم توجيه هذه المدونة لمقارنة 'BigDecimals' في Java.