Este artigo irá detalhar as abordagens para comparar dois “BigDecimals” em Java.
O que é “BigDecimal” em Java?
A ' BigDecimal ” em Java compreende uma escala inteira de 32 bits e é utilizada para lidar com números de ponto flutuante muito grandes e muito pequenos. O ' escala ” representa o número de dígitos à direita do ponto decimal.
Como comparar dois BigDecimals em Java?
Para comparar dois BigDecimals em Java, aplique as seguintes abordagens:
Antes de ir para as abordagens, certifique-se de incluir o pacote fornecido abaixo para acessar o “ matemática ” métodos de classe:
importar java.math.* ;
Abordagem 1: Compare Dois BigDecimals em Java Usando o Método “compareTo()”
O ' compareTo() ” método compara os dois “ BigDecimals ” e retorna o resultado com base nos seguintes parâmetros:
Resultado devolvido | Comparação computada |
---|---|
1 | Se o antigo BigDecimal for maior que o último BigDecimal. |
0 | No caso do primeiro BigDecimal ser igual ao último BigDecimal. |
-1 | Quando o antigo BigDecimal é menor que o último BigDecimal. |
Este método pode ser aplicado para comparar os dois “ BigDecimal ” valores e retornar o resultado correspondente por meio do “ se/senão ' declaração.
Sintaxe
público int compareTo ( Objeto obj )
De acordo com esta sintaxe, “ Object obj ” corresponde ao objeto que precisa ser comparado.
Exemplo
O exemplo fornecido abaixo explica o conceito discutido:
público aula comparar grandedecimal {público estático vazio principal ( Corda argumentos [ ] ) {
BigDecimal val1, val2 ;
escolha1 = novo BigDecimal ( '26326.04' ) ;
val2 = novo BigDecimal ( '22145.20' ) ;
se ( escolha1. compareTo ( val2 ) == 0 ) {
Sistema . fora . println ( escolha1 + ' e ' + val2 + ' são iguais' ) ;
}
outro se ( escolha1. compareTo ( val2 ) == - 1 ) {
Sistema . fora . println ( escolha1 + ' é menos do que ' + val2 ) ;
}
outro {
Sistema . fora . println ( escolha1. compareTo ( val2 ) ) ;
Sistema . fora . println ( escolha1 + ' é melhor que ' + val2 ) ;
}
De acordo com as linhas de código acima, aplique as seguintes etapas:
- Primeiro de tudo, crie dois “ BigDecimals ” tendo os valores declarados.
- Agora, associe o “ compareTo() ” com os valores atribuídos e com a condição satisfeita no método “ se ”, registre a mensagem correspondente.
- Observação: As condições são especificadas com base no resultado retornado do método para que o método funcione corretamente.
- Da mesma forma, o “ senão se ” especifica a outra condição considerando o tipo de retorno do método, ou seja, “ -1 ”.
- Por fim, faça o “ outro ” declaração entrará em vigor em ambas as condições não satisfeitas acima.
Saída
No resultado acima, o retornado “ 1 ” indica que o “ outro ” é invocada.
Abordagem 2: comparar dois BigDecimals em Java usando o método “equals ()”
O ' é igual a() ” método do Java “ BigDecimal ” é utilizada para comparar os BigDecimals para igualdade com base no valor e na escala. Este método pode ser implementado para aplicar uma verificação nos BigDecimals tendo uma variação em sua escala.
Sintaxe
público boleano é igual a ( Objeto x )Nesta sintaxe, “ objeto x ” corresponde ao objeto com o qual este BigDecimal precisa ser comparado.
Exemplo
Vamos analisar o seguinte exemplo:
público aula comparargrandedecimal2 {público estático vazio principal ( Corda argumentos [ ] ) {
BigDecimal val1, val2 ;
escolha1 = novo BigDecimal ( '205,0' ) ;
val2 = novo BigDecimal ( '205,00' ) ;
se ( escolha1. é igual a ( val2 ) ) {
Sistema . fora . println ( escolha1 + ' e ' + val2 + ' são iguais' ) ;
}
outro {
Sistema . fora . println ( escolha1 + ' e ' + val2 + 'não são iguais' ) ;
}
} }
De acordo com o código acima:
- Da mesma forma, crie dois BigDecimals com variação em sua escala.
- Observação: “ 0 ” não é igual a “ 2,00 ” quando comparado a este método.
- Depois disso, aplique o “ é igual a() ” para comparar os BigDecimals criados e retornar o resultado correspondente por meio do método “ se/senão ' declaração.
Saída
Neste resultado, pode-se observar que tanto o “ BigDecimals ” não são iguais devido à variação na escala.
No entanto, o seguinte resultado leva a igualar os “BigDecimals”:
É assim que você pode comparar dois “ BigDecimals ” em Java.
Conclusão
A ' BigDecimal ” em Java compreende uma escala inteira de 32 bits. Os dois BigDecimals em Java podem ser comparados aplicando o método “ compareTo() ', ou o ' é igual a() ' métodos. A primeira abordagem retorna a saída com base na comparação calculada. A última abordagem analisa os valores BigDecimal com base nas escalas especificadas. Este blog é guiado para comparar os dois “BigDecimals” em Java.