Method evaluates bigdecimal object values as well as the scales allocated to the values. Method returns true only when both bigdecimal objects as operands for the methods possess same value and same scale.

Java BigDecimal equals example

Method evaluates bigdecimal
object values as well as the scales allocated to the values. Method returns true only when both
bigdecimal objects as operands for the methods possess
same value and same scale.
Method throws NumberFormatException if it value other than integer or double value.
In the example an string array with name rose is created. With this array two bigdecimal objects
neo & trinity are assigned number values.
Also an object of MathContext class is created for handling the rounding behavior of the values,
assigned to the bigdecimal objects.
Syntax for using the method: public boolean equal(Object x)
System.out.println(bigdecimal_objectName.equals(bigdecimal_objectName)));
or
boolean boo = (this.object).equals(x);
Java_BigDecimal_equal.java
import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
public class Java_BigDecimal_equal {
public static void main(String args[]) {
String rose[] = { "dreams ", "are",
"those", "that", "don't", "let",
"sleep " };
BigDecimal neo = new BigDecimal(rose.length),
trinity = new BigDecimal(rose[6].length());
boolean result_0 = neo.equals(trinity);
if (result_0 == true) {
System.out.println(neo.equals(trinity)
+ " : Both operands possess same" +
" length of value");
} else
System.out.println(neo.equals(trinity)
+ " : Both operands are not equal");
MathContext mc_0 = new MathContext(0),
mc_1 = new MathContext(0);
mc_0 = new MathContext(0, RoundingMode.DOWN);
mc_1 = new MathContext(0, RoundingMode.DOWN);
neo = new BigDecimal(Math.PI, mc_0);
trinity = new BigDecimal(Math.PI, mc_1);
boolean result_1 = neo.equals(trinity);
if (result_1 == true) {
System.out.println(neo.equals(trinity)
+ " : Method operands possess " +
"value of same length and scale");
} else
System.out.println(neo.equals(trinity)
+ " : Method operands are unequal");
mc_0 = new MathContext(0, RoundingMode.HALF_DOWN);
mc_1 = new MathContext(0, RoundingMode.UNNECESSARY);
neo = new BigDecimal(Math.E, mc_0);
trinity = new BigDecimal(Math.PI, mc_1);
boolean result_2 = neo.equals(trinity);
if (result_2 == true) {
System.out.println(neo.equals(trinity)
+ " : Method operands possess " +
"value of same length and scale");
} else
System.out.println(neo.equals(trinity)
+ " : Method operands are unequal");
}
}
|
Download the code