Как сравнить два BigDecimals в Java

Kak Sravnit Dva Bigdecimals V Java



BigDecimal » в Java обеспечивает арифметические операции, управление масштабированием, округление, сравнение и т. д. Кроме того, он позволяет программистам с исключительной точностью обрабатывать большие и малые целые числа с плавающей запятой. Это помогает достичь большей точности по фиксированному числу десятичных знаков.

В этой статье будут подробно описаны подходы к сравнению двух «BigDecimals» в Java.

Что такое BigDecimal в Java?

А “ BigDecimal ” в Java содержит 32-битную целочисленную шкалу и используется для обработки очень больших и очень маленьких чисел с плавающей запятой. “ шкала ” представляет количество цифр справа от десятичной точки.







Как сравнить два BigDecimals в Java?

Чтобы сравнить два BigDecimals в Java, примените следующие подходы:



Прежде чем перейти к подходам, обязательно включите приведенный ниже пакет для доступа к « математика ” методы класса:



Импортировать Java.math.* ;

Подход 1: сравнение двух BigDecimals в Java с использованием метода «compareTo()»

по сравнению с() ' метод сравнивает два ' BigDecimals » и возвращает результат на основе следующих параметров:





Возвращенный результат Расчетное сравнение
1 Если первый BigDecimal больше второго BigDecimal.
0 В случае, если первый BigDecimal равен последнему BigDecimal.
-1 Когда первый BigDecimal меньше второго BigDecimal.

Этот метод можно применить для сравнения двух созданных « BigDecimal » значения и вернуть соответствующий результат через « если еще ' заявление.

Синтаксис



публичный инт по сравнению с ( Объект объект )

Согласно этому синтаксису, « Объект объект ” соответствует объекту, который необходимо сравнить.

Пример

Приведенный ниже пример объясняет обсуждаемую концепцию:

публичный сорт сравнитьбольшойдесятичный {
публичный статический пустота основной ( Нить аргументы [ ] ) {
BigDecimal значение1, значение2 ;
выбор1 '=' новый BigDecimal ( '26326.04' ) ;
значение2 '=' новый BigDecimal ( '22145.20' ) ;
если ( выбор1. по сравнению с ( значение2 ) == 0 ) {
Система . вне . печать ( выбор1 + ' и ' + значение2 + ' равны' ) ;
}
еще если ( выбор1. по сравнению с ( значение2 ) == - 1 ) {
Система . вне . печать ( выбор1 + ' меньше чем ' + значение2 ) ;
}
еще {
Система . вне . печать ( выбор1. по сравнению с ( значение2 ) ) ;
Система . вне . печать ( выбор1 + ' больше, чем ' + значение2 ) ;
}

В соответствии с приведенными выше строками кода выполните следующие действия:

  • Прежде всего, создайте два « BigDecimals ” с заявленными значениями.
  • Теперь свяжите « по сравнению с() ” как с заданными значениями, так и при выполнении условия в “ если », запишите соответствующее сообщение.
  • Примечание: Условия указываются на основе возвращаемого результата метода, чтобы метод работал правильно.
  • Аналогично, « иначе, если » указывает другое условие, учитывающее тип возвращаемого значения метода, т. е. « -1 ».
  • Наконец, сделайте « еще ” вступает в силу при невыполнении обоих вышеперечисленных условий.

Выход

В приведенном выше результате возвращенное « 1 ” указывает на то, что “ еще » вызывается оператор.

Подход 2: сравнение двух BigDecimals в Java с использованием метода «equals()»

равно() 'метод Java' BigDecimal ” используется для сравнения BigDecimals на равенство на основе значения и масштаба. Этот метод может быть реализован для применения проверки BigDecimals, имеющих изменение в их масштабе.

Синтаксис

публичный логический равно ( Объект Икс )

В этом синтаксисе « Объект х ” соответствует объекту, с которым нужно сравнить этот BigDecimal.

Пример

Давайте рассмотрим следующий пример:

публичный сорт сравнитьбольшойдесятичный2 {
публичный статический пустота основной ( Нить аргументы [ ] ) {
BigDecimal значение1, значение2 ;
выбор1 '=' новый BigDecimal ( '205.0' ) ;
значение2 '=' новый BigDecimal ( '205.00' ) ;
если ( выбор1. равно ( значение2 ) ) {
Система . вне . печать ( выбор1 + ' и ' + значение2 + ' равны' ) ;
}
еще {
Система . вне . печать ( выбор1 + ' и ' + значение2 + 'не равны' ) ;
}
} }

Согласно приведенному выше коду:

  • Точно так же создайте два BigDecimals с разным масштабом.
  • Примечание: 0 ” не равно “ 2.00 ” по сравнению с этим методом.
  • После этого примените « равно() », чтобы сравнить созданные BigDecimals и вернуть соответствующий результат через « если еще ' заявление.

Выход

В этом результате можно заметить, что как « BigDecimals ” не равны из-за разницы в масштабе.

Однако следующий результат приводит к тому, что «BigDecimals» становятся равными:

Вот как можно сравнивать два» BigDecimals на Яве.

Заключение

А “ BigDecimal ” в Java содержит 32-битную целочисленную шкалу. Два BigDecimals в Java можно сравнить, применив « по сравнению с() ', или ' равно() методы. Первый подход возвращает выходные данные на основе вычисленного сравнения. Последний подход анализирует значения BigDecimal на основе указанных масштабов. Этот блог направлен на сравнение двух «BigDecimals» в Java.